@signetai/connector-oh-my-pi 0.154.2 → 0.154.4

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.
@@ -4,5 +4,5 @@
4
4
  * Auto-generated by scripts/embed-extension.ts — do not edit manually.
5
5
  * Re-run the build to regenerate from ../extension/dist/signet-oh-my-pi.mjs
6
6
  */
7
- export declare const EXTENSION_BUNDLE = "function r(Z){return typeof Z===\"object\"&&Z!==null}function H0(Z){let Q=Reflect.get(globalThis,\"process\");if(!r(Q))return;let G=Reflect.get(Q,\"env\");if(!r(G))return;let B=Reflect.get(G,Z);return typeof B===\"string\"?B:void 0}function w(Z){if(typeof Z!==\"string\")return;let Q=Z.trim();return Q.length>0?Q:void 0}function p(Z){return w(H0(Z))}import{existsSync as M6,readFileSync as D6}from\"node:fs\";function BZ(Z){return Z.replace(/\\s*\\r?\\n\\s*/g,\" \").trim()}function N6(Z){let Q=Z?.trim().toLowerCase();if(!Q||[\"user\",\"human\",\"client\"].includes(Q))return\"User\";if([\"assistant\",\"agent\",\"model\",\"ai\"].includes(Q))return\"Assistant\";if([\"system\",\"developer\"].includes(Q))return\"System\";if([\"custom\",\"tool\",\"toolresult\",\"tool_result\",\"bashexecution\",\"pythonexecution\"].includes(Q))return Q===\"custom\"?\"Custom\":\"Tool\";return}function T6(Z){if(typeof Z===\"string\"){let G=BZ(Z);return G.length>0?G:void 0}if(!Array.isArray(Z))return;let Q=[];for(let G of Z){if(!r(G))continue;let B=w(G.text)??w(G.input_text)??w(G.content);if(!B)continue;Q.push(BZ(B))}if(Q.length===0)return;return Q.join(\" \")}function KZ(Z,Q){let G=T6(Q),B=N6(Z);if(!G||!B)return;return`${B}: ${G}`}function S6(Z,Q){if(!r(Z)||typeof Z.type!==\"string\")return;if(Z.type===\"custom_message\"){if(typeof Z.customType===\"string\"&&Q.has(Z.customType))return;return KZ(\"custom\",Z.content)}if(Z.type!==\"message\")return;if(!r(Z.message))return;let G=w(Z.message.role),B=Reflect.get(Z.message,\"content\")??Reflect.get(Z.message,\"parts\");return KZ(G,B)}function A0(Z,Q=new Set){let G=[];for(let B of Z){let O=S6(B,Q);if(!O)continue;G.push(O)}if(G.length===0)return;return G.join(`\n`)}function C6(Z){try{return JSON.parse(Z)}catch{return}}function E6(Z){let Q,G=[];for(let B of Z){let O=C6(B);if(!r(O)||typeof O.type!==\"string\")continue;if(O.type===\"session\"){Q=O;continue}G.push(O)}return{header:Q,entries:G}}function P6(Z){return D6(Z,\"utf-8\").split(`\n`).map((Q)=>Q.trim()).filter((Q)=>Q.length>0)}function w6(Z){return w(Z?.cwd)??w(Z?.project)??w(Z?.workspace)}function I0(Z,Q=new Set){if(!Z||!M6(Z))return{loaded:!1,sessionId:void 0,project:void 0,transcript:void 0};try{let{header:G,entries:B}=E6(P6(Z));return{loaded:!0,sessionId:w(G?.id),project:w6(G),transcript:A0(B,Q)}}catch{return{loaded:!1,sessionId:void 0,project:void 0,transcript:void 0}}}function y6(){return p(\"SIGNET_API_KEY\")??p(\"SIGNET_TOKEN\")}function k6(Z){let Q={\"Content-Type\":\"application/json\",\"x-signet-runtime-path\":Z.runtimePath,\"x-signet-actor\":Z.actorName,\"x-signet-actor-type\":\"harness\"},G=y6();if(G)Q.Authorization=`Bearer ${G}`;return Q}function FZ(Z){if(typeof Z!==\"object\"||Z===null)return\"\";let Q=Reflect.get(Z,\"name\");return typeof Q===\"string\"?Q:\"\"}function _Z(Z){let Q=FZ(Z);if(Q===\"AbortError\"||Q===\"TimeoutError\")return!0;return(typeof Z===\"object\"&&Z!==null?Reflect.get(Z,\"code\"):void 0)===\"ABORT_ERR\"}async function OZ(Z,Q,G,B={}){let{method:O=\"POST\",body:_,timeout:Y=G.defaultTimeout}=B;try{let U={method:O,headers:k6(G),signal:AbortSignal.timeout(Y)};if(_!==void 0)U.body=JSON.stringify(_);let H=await fetch(`${Z}${Q}`,U);if(!H.ok)return console.warn(`[${G.logPrefix}] ${O} ${Q} failed: ${H.status}`),{ok:!1,reason:\"http\",status:H.status};try{let z=await H.text();try{return{ok:!0,data:JSON.parse(z)}}catch{return console.warn(`[${G.logPrefix}] ${O} ${Q} returned invalid JSON (${z.length} chars${z.length===0?\", empty body\":\"\"})`),{ok:!1,reason:\"invalid-json\",status:H.status}}}catch(z){if(_Z(z))return console.warn(`[${G.logPrefix}] ${O} ${Q} body read timed out after ${Y}ms`),{ok:!1,reason:\"timeout\"};return console.warn(`[${G.logPrefix}] ${O} ${Q} body read failed:`,FZ(z)||z),{ok:!1,reason:\"body-read\"}}}catch(U){if(_Z(U))return console.warn(`[${G.logPrefix}] ${O} ${Q} timed out after ${Y}ms`),{ok:!1,reason:\"timeout\"};return console.warn(`[${G.logPrefix}] ${O} ${Q} error:`,U),{ok:!1,reason:\"offline\"}}}function i0(Z,Q){return{async post(G,B,O=Q.defaultTimeout){let _=await OZ(Z,G,Q,{method:\"POST\",body:B,timeout:O});if(!_.ok)return null;return _.data},postResult(G,B,O=Q.defaultTimeout){return OZ(Z,G,Q,{method:\"POST\",body:B,timeout:O})}}}import{createRequire as f6}from\"node:module\";import{dirname as Y8,join as XX}from\"node:path\";import{fileURLToPath as B8}from\"node:url\";import{createRequire as q5}from\"node:module\";import{homedir as o0,platform as I5}from\"node:os\";import{basename as BX,dirname as KX,resolve as B0}from\"node:path\";import{existsSync as N0,readFileSync as WZ,readdirSync as jX,realpathSync as RX,statSync as qX}from\"node:fs\";import{dirname as AX,join as VZ}from\"node:path\";import{homedir as f5}from\"node:os\";var{create:x6,getPrototypeOf:g6,defineProperty:jZ,getOwnPropertyNames:v6}=Object,b6=Object.prototype.hasOwnProperty;function h6(Z){return this[Z]}var m6,u6,wZ=(Z,Q,G)=>{var B=Z!=null&&typeof Z===\"object\";if(B){var O=Q?m6??=new WeakMap:u6??=new WeakMap,_=O.get(Z);if(_)return _}G=Z!=null?x6(g6(Z)):{};let Y=Q||!Z||!Z.__esModule?jZ(G,\"default\",{value:Z,enumerable:!0}):G;for(let U of v6(Z))if(!b6.call(Y,U))jZ(Y,U,{get:h6.bind(Z,U),enumerable:!0});if(B)O.set(Z,Y);return Y},S=(Z,Q)=>()=>(Q||Z((Q={exports:{}}).exports,Q),Q.exports),T0=f6(import.meta.url),y=S((Z)=>{var Q=Symbol.for(\"yaml.alias\"),G=Symbol.for(\"yaml.document\"),B=Symbol.for(\"yaml.map\"),O=Symbol.for(\"yaml.pair\"),_=Symbol.for(\"yaml.scalar\"),Y=Symbol.for(\"yaml.seq\"),U=Symbol.for(\"yaml.node.type\"),H=(j)=>!!j&&typeof j===\"object\"&&j[U]===Q,z=(j)=>!!j&&typeof j===\"object\"&&j[U]===G,V=(j)=>!!j&&typeof j===\"object\"&&j[U]===B,X=(j)=>!!j&&typeof j===\"object\"&&j[U]===O,$=(j)=>!!j&&typeof j===\"object\"&&j[U]===_,J=(j)=>!!j&&typeof j===\"object\"&&j[U]===Y;function W(j){if(j&&typeof j===\"object\")switch(j[U]){case B:case Y:return!0}return!1}function K(j){if(j&&typeof j===\"object\")switch(j[U]){case Q:case B:case _:case Y:return!0}return!1}var F=(j)=>($(j)||W(j))&&!!j.anchor;Z.ALIAS=Q,Z.DOC=G,Z.MAP=B,Z.NODE_TYPE=U,Z.PAIR=O,Z.SCALAR=_,Z.SEQ=Y,Z.hasAnchor=F,Z.isAlias=H,Z.isCollection=W,Z.isDocument=z,Z.isMap=V,Z.isNode=K,Z.isPair=X,Z.isScalar=$,Z.isSeq=J}),S0=S((Z)=>{var Q=y(),G=Symbol(\"break visit\"),B=Symbol(\"skip children\"),O=Symbol(\"remove node\");function _($,J){let W=z(J);if(Q.isDocument($)){if(Y(null,$.contents,W,Object.freeze([$]))===O)$.contents=null}else Y(null,$,W,Object.freeze([]))}_.BREAK=G,_.SKIP=B,_.REMOVE=O;function Y($,J,W,K){let F=V($,J,W,K);if(Q.isNode(F)||Q.isPair(F))return X($,K,F),Y($,F,W,K);if(typeof F!==\"symbol\"){if(Q.isCollection(J)){K=Object.freeze(K.concat(J));for(let j=0;j<J.items.length;++j){let R=Y(j,J.items[j],W,K);if(typeof R===\"number\")j=R-1;else if(R===G)return G;else if(R===O)J.items.splice(j,1),j-=1}}else if(Q.isPair(J)){K=Object.freeze(K.concat(J));let j=Y(\"key\",J.key,W,K);if(j===G)return G;else if(j===O)J.key=null;let R=Y(\"value\",J.value,W,K);if(R===G)return G;else if(R===O)J.value=null}}return F}async function U($,J){let W=z(J);if(Q.isDocument($)){if(await H(null,$.contents,W,Object.freeze([$]))===O)$.contents=null}else await H(null,$,W,Object.freeze([]))}U.BREAK=G,U.SKIP=B,U.REMOVE=O;async function H($,J,W,K){let F=await V($,J,W,K);if(Q.isNode(F)||Q.isPair(F))return X($,K,F),H($,F,W,K);if(typeof F!==\"symbol\"){if(Q.isCollection(J)){K=Object.freeze(K.concat(J));for(let j=0;j<J.items.length;++j){let R=await H(j,J.items[j],W,K);if(typeof R===\"number\")j=R-1;else if(R===G)return G;else if(R===O)J.items.splice(j,1),j-=1}}else if(Q.isPair(J)){K=Object.freeze(K.concat(J));let j=await H(\"key\",J.key,W,K);if(j===G)return G;else if(j===O)J.key=null;let R=await H(\"value\",J.value,W,K);if(R===G)return G;else if(R===O)J.value=null}}return F}function z($){if(typeof $===\"object\"&&($.Collection||$.Node||$.Value))return Object.assign({Alias:$.Node,Map:$.Node,Scalar:$.Node,Seq:$.Node},$.Value&&{Map:$.Value,Scalar:$.Value,Seq:$.Value},$.Collection&&{Map:$.Collection,Seq:$.Collection},$);return $}function V($,J,W,K){if(typeof W===\"function\")return W($,J,K);if(Q.isMap(J))return W.Map?.($,J,K);if(Q.isSeq(J))return W.Seq?.($,J,K);if(Q.isPair(J))return W.Pair?.($,J,K);if(Q.isScalar(J))return W.Scalar?.($,J,K);if(Q.isAlias(J))return W.Alias?.($,J,K);return}function X($,J,W){let K=J[J.length-1];if(Q.isCollection(K))K.items[$]=W;else if(Q.isPair(K))if($===\"key\")K.key=W;else K.value=W;else if(Q.isDocument(K))K.contents=W;else{let F=Q.isAlias(K)?\"alias\":\"scalar\";throw Error(`Cannot replace node with ${F} parent`)}}Z.visit=_,Z.visitAsync=U}),yZ=S((Z)=>{var Q=y(),G=S0(),B={\"!\":\"%21\",\",\":\"%2C\",\"[\":\"%5B\",\"]\":\"%5D\",\"{\":\"%7B\",\"}\":\"%7D\"},O=(Y)=>Y.replace(/[!,[\\]{}]/g,(U)=>B[U]);class _{constructor(Y,U){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},_.defaultYaml,Y),this.tags=Object.assign({},_.defaultTags,U)}clone(){let Y=new _(this.yaml,this.tags);return Y.docStart=this.docStart,Y}atDocument(){let Y=new _(this.yaml,this.tags);switch(this.yaml.version){case\"1.1\":this.atNextDocument=!0;break;case\"1.2\":this.atNextDocument=!1,this.yaml={explicit:_.defaultYaml.explicit,version:\"1.2\"},this.tags=Object.assign({},_.defaultTags);break}return Y}add(Y,U){if(this.atNextDocument)this.yaml={explicit:_.defaultYaml.explicit,version:\"1.1\"},this.tags=Object.assign({},_.defaultTags),this.atNextDocument=!1;let H=Y.trim().split(/[ \\t]+/),z=H.shift();switch(z){case\"%TAG\":{if(H.length!==2){if(U(0,\"%TAG directive should contain exactly two parts\"),H.length<2)return!1}let[V,X]=H;return this.tags[V]=X,!0}case\"%YAML\":{if(this.yaml.explicit=!0,H.length!==1)return U(0,\"%YAML directive should contain exactly one part\"),!1;let[V]=H;if(V===\"1.1\"||V===\"1.2\")return this.yaml.version=V,!0;else{let X=/^\\d+\\.\\d+$/.test(V);return U(6,`Unsupported YAML version ${V}`,X),!1}}default:return U(0,`Unknown directive ${z}`,!0),!1}}tagName(Y,U){if(Y===\"!\")return\"!\";if(Y[0]!==\"!\")return U(`Not a valid tag: ${Y}`),null;if(Y[1]===\"<\"){let X=Y.slice(2,-1);if(X===\"!\"||X===\"!!\")return U(`Verbatim tags aren't resolved, so ${Y} is invalid.`),null;if(Y[Y.length-1]!==\">\")U(\"Verbatim tags must end with a >\");return X}let[,H,z]=Y.match(/^(.*!)([^!]*)$/s);if(!z)U(`The ${Y} tag has no suffix`);let V=this.tags[H];if(V)try{return V+decodeURIComponent(z)}catch(X){return U(String(X)),null}if(H===\"!\")return Y;return U(`Could not resolve tag: ${Y}`),null}tagString(Y){for(let[U,H]of Object.entries(this.tags))if(Y.startsWith(H))return U+O(Y.substring(H.length));return Y[0]===\"!\"?Y:`!<${Y}>`}toString(Y){let U=this.yaml.explicit?[`%YAML ${this.yaml.version||\"1.2\"}`]:[],H=Object.entries(this.tags),z;if(Y&&H.length>0&&Q.isNode(Y.contents)){let V={};G.visit(Y.contents,(X,$)=>{if(Q.isNode($)&&$.tag)V[$.tag]=!0}),z=Object.keys(V)}else z=[];for(let[V,X]of H){if(V===\"!!\"&&X===\"tag:yaml.org,2002:\")continue;if(!Y||z.some(($)=>$.startsWith(X)))U.push(`%TAG ${V} ${X}`)}return U.join(`\n`)}}_.defaultYaml={explicit:!1,version:\"1.2\"},_.defaultTags={\"!!\":\"tag:yaml.org,2002:\"},Z.Directives=_}),e0=S((Z)=>{var Q=y(),G=S0();function B(U){if(/[\\x00-\\x19\\s,[\\]{}]/.test(U)){let z=`Anchor must not contain whitespace or control characters: ${JSON.stringify(U)}`;throw Error(z)}return!0}function O(U){let H=new Set;return G.visit(U,{Value(z,V){if(V.anchor)H.add(V.anchor)}}),H}function _(U,H){for(let z=1;;++z){let V=`${U}${z}`;if(!H.has(V))return V}}function Y(U,H){let z=[],V=new Map,X=null;return{onAnchor:($)=>{z.push($),X??(X=O(U));let J=_(H,X);return X.add(J),J},setAnchors:()=>{for(let $ of z){let J=V.get($);if(typeof J===\"object\"&&J.anchor&&(Q.isScalar(J.node)||Q.isCollection(J.node)))J.node.anchor=J.anchor;else{let W=Error(\"Failed to resolve repeated object (this should not happen)\");throw W.source=$,W}}},sourceObjects:V}}Z.anchorIsValid=B,Z.anchorNames=O,Z.createNodeAnchors=Y,Z.findNewAnchor=_}),kZ=S((Z)=>{function Q(G,B,O,_){if(_&&typeof _===\"object\")if(Array.isArray(_))for(let Y=0,U=_.length;Y<U;++Y){let H=_[Y],z=Q(G,_,String(Y),H);if(z===void 0)delete _[Y];else if(z!==H)_[Y]=z}else if(_ instanceof Map)for(let Y of Array.from(_.keys())){let U=_.get(Y),H=Q(G,_,Y,U);if(H===void 0)_.delete(Y);else if(H!==U)_.set(Y,H)}else if(_ instanceof Set)for(let Y of Array.from(_)){let U=Q(G,_,Y,Y);if(U===void 0)_.delete(Y);else if(U!==Y)_.delete(Y),_.add(U)}else for(let[Y,U]of Object.entries(_)){let H=Q(G,_,Y,U);if(H===void 0)delete _[Y];else if(H!==U)_[Y]=H}return G.call(B,O,_)}Z.applyReviver=Q}),X0=S((Z)=>{var Q=y();function G(B,O,_){if(Array.isArray(B))return B.map((Y,U)=>G(Y,String(U),_));if(B&&typeof B.toJSON===\"function\"){if(!_||!Q.hasAnchor(B))return B.toJSON(O,_);let Y={aliasCount:0,count:1,res:void 0};_.anchors.set(B,Y),_.onCreate=(H)=>{Y.res=H,delete _.onCreate};let U=B.toJSON(O,_);if(_.onCreate)_.onCreate(U);return U}if(typeof B===\"bigint\"&&!_?.keep)return Number(B);return B}Z.toJS=G}),ZZ=S((Z)=>{var Q=kZ(),G=y(),B=X0();class O{constructor(_){Object.defineProperty(this,G.NODE_TYPE,{value:_})}clone(){let _=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));if(this.range)_.range=this.range.slice();return _}toJS(_,{mapAsMap:Y,maxAliasCount:U,onAnchor:H,reviver:z}={}){if(!G.isDocument(_))throw TypeError(\"A document argument is required\");let V={anchors:new Map,doc:_,keep:!0,mapAsMap:Y===!0,mapKeyWarned:!1,maxAliasCount:typeof U===\"number\"?U:100},X=B.toJS(this,\"\",V);if(typeof H===\"function\")for(let{count:$,res:J}of V.anchors.values())H(J,$);return typeof z===\"function\"?Q.applyReviver(z,{\"\":X},\"\",X):X}}Z.NodeBase=O}),C0=S((Z)=>{var Q=e0(),G=S0(),B=y(),O=ZZ(),_=X0();class Y extends O.NodeBase{constructor(H){super(B.ALIAS);this.source=H,Object.defineProperty(this,\"tag\",{set(){throw Error(\"Alias nodes cannot have tags\")}})}resolve(H,z){let V;if(z?.aliasResolveCache)V=z.aliasResolveCache;else if(V=[],G.visit(H,{Node:($,J)=>{if(B.isAlias(J)||B.hasAnchor(J))V.push(J)}}),z)z.aliasResolveCache=V;let X=void 0;for(let $ of V){if($===this)break;if($.anchor===this.source)X=$}return X}toJSON(H,z){if(!z)return{source:this.source};let{anchors:V,doc:X,maxAliasCount:$}=z,J=this.resolve(X,z);if(!J){let K=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw ReferenceError(K)}let W=V.get(J);if(!W)_.toJS(J,null,z),W=V.get(J);if(W?.res===void 0)throw ReferenceError(\"This should not happen: Alias anchor was not resolved?\");if($>=0){if(W.count+=1,W.aliasCount===0)W.aliasCount=U(X,J,V);if(W.count*W.aliasCount>$)throw ReferenceError(\"Excessive alias count indicates a resource exhaustion attack\")}return W.res}toString(H,z,V){let X=`*${this.source}`;if(H){if(Q.anchorIsValid(this.source),H.options.verifyAliasOrder&&!H.anchors.has(this.source)){let $=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw Error($)}if(H.implicitKey)return`${X} `}return X}}function U(H,z,V){if(B.isAlias(z)){let X=z.resolve(H),$=V&&X&&V.get(X);return $?$.count*$.aliasCount:0}else if(B.isCollection(z)){let X=0;for(let $ of z.items){let J=U(H,$,V);if(J>X)X=J}return X}else if(B.isPair(z)){let X=U(H,z.key,V),$=U(H,z.value,V);return Math.max(X,$)}return 1}Z.Alias=Y}),b=S((Z)=>{var Q=y(),G=ZZ(),B=X0(),O=(Y)=>!Y||typeof Y!==\"function\"&&typeof Y!==\"object\";class _ extends G.NodeBase{constructor(Y){super(Q.SCALAR);this.value=Y}toJSON(Y,U){return U?.keep?this.value:B.toJS(this.value,Y,U)}toString(){return String(this.value)}}_.BLOCK_FOLDED=\"BLOCK_FOLDED\",_.BLOCK_LITERAL=\"BLOCK_LITERAL\",_.PLAIN=\"PLAIN\",_.QUOTE_DOUBLE=\"QUOTE_DOUBLE\",_.QUOTE_SINGLE=\"QUOTE_SINGLE\",Z.Scalar=_,Z.isScalarValue=O}),E0=S((Z)=>{var Q=C0(),G=y(),B=b(),O=\"tag:yaml.org,2002:\";function _(U,H,z){if(H){let V=z.filter(($)=>$.tag===H),X=V.find(($)=>!$.format)??V[0];if(!X)throw Error(`Tag ${H} not found`);return X}return z.find((V)=>V.identify?.(U)&&!V.format)}function Y(U,H,z){if(G.isDocument(U))U=U.contents;if(G.isNode(U))return U;if(G.isPair(U)){let R=z.schema[G.MAP].createNode?.(z.schema,null,z);return R.items.push(U),R}if(U instanceof String||U instanceof Number||U instanceof Boolean||typeof BigInt<\"u\"&&U instanceof BigInt)U=U.valueOf();let{aliasDuplicateObjects:V,onAnchor:X,onTagObj:$,schema:J,sourceObjects:W}=z,K=void 0;if(V&&U&&typeof U===\"object\")if(K=W.get(U),K)return K.anchor??(K.anchor=X(U)),new Q.Alias(K.anchor);else K={anchor:null,node:null},W.set(U,K);if(H?.startsWith(\"!!\"))H=O+H.slice(2);let F=_(U,H,J.tags);if(!F){if(U&&typeof U.toJSON===\"function\")U=U.toJSON();if(!U||typeof U!==\"object\"){let R=new B.Scalar(U);if(K)K.node=R;return R}F=U instanceof Map?J[G.MAP]:(Symbol.iterator in Object(U))?J[G.SEQ]:J[G.MAP]}if($)$(F),delete z.onTagObj;let j=F?.createNode?F.createNode(z.schema,U,z):typeof F?.nodeClass?.from===\"function\"?F.nodeClass.from(z.schema,U,z):new B.Scalar(U);if(H)j.tag=H;else if(!F.default)j.tag=F.tag;if(K)K.node=j;return j}Z.createNode=Y}),XZ=S((Z)=>{var Q=E0(),G=y(),B=ZZ();function O(U,H,z){let V=z;for(let X=H.length-1;X>=0;--X){let $=H[X];if(typeof $===\"number\"&&Number.isInteger($)&&$>=0){let J=[];J[$]=V,V=J}else V=new Map([[$,V]])}return Q.createNode(V,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw Error(\"This should not happen, please report a bug.\")},schema:U,sourceObjects:new Map})}var _=(U)=>U==null||typeof U===\"object\"&&!!U[Symbol.iterator]().next().done;class Y extends B.NodeBase{constructor(U,H){super(U);Object.defineProperty(this,\"schema\",{value:H,configurable:!0,enumerable:!1,writable:!0})}clone(U){let H=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));if(U)H.schema=U;if(H.items=H.items.map((z)=>G.isNode(z)||G.isPair(z)?z.clone(U):z),this.range)H.range=this.range.slice();return H}addIn(U,H){if(_(U))this.add(H);else{let[z,...V]=U,X=this.get(z,!0);if(G.isCollection(X))X.addIn(V,H);else if(X===void 0&&this.schema)this.set(z,O(this.schema,V,H));else throw Error(`Expected YAML collection at ${z}. Remaining path: ${V}`)}}deleteIn(U){let[H,...z]=U;if(z.length===0)return this.delete(H);let V=this.get(H,!0);if(G.isCollection(V))return V.deleteIn(z);else throw Error(`Expected YAML collection at ${H}. Remaining path: ${z}`)}getIn(U,H){let[z,...V]=U,X=this.get(z,!0);if(V.length===0)return!H&&G.isScalar(X)?X.value:X;else return G.isCollection(X)?X.getIn(V,H):void 0}hasAllNullValues(U){return this.items.every((H)=>{if(!G.isPair(H))return!1;let z=H.value;return z==null||U&&G.isScalar(z)&&z.value==null&&!z.commentBefore&&!z.comment&&!z.tag})}hasIn(U){let[H,...z]=U;if(z.length===0)return this.has(H);let V=this.get(H,!0);return G.isCollection(V)?V.hasIn(z):!1}setIn(U,H){let[z,...V]=U;if(V.length===0)this.set(z,H);else{let X=this.get(z,!0);if(G.isCollection(X))X.setIn(V,H);else if(X===void 0&&this.schema)this.set(z,O(this.schema,V,H));else throw Error(`Expected YAML collection at ${z}. Remaining path: ${V}`)}}}Z.Collection=Y,Z.collectionFromPath=O,Z.isEmptyPath=_}),P0=S((Z)=>{var Q=(O)=>O.replace(/^(?!$)(?: $)?/gm,\"#\");function G(O,_){if(/^\\n+$/.test(O))return O.substring(1);return _?O.replace(/^(?! *$)/gm,_):O}var B=(O,_,Y)=>O.endsWith(`\n`)?G(Y,_):Y.includes(`\n`)?`\n`+G(Y,_):(O.endsWith(\" \")?\"\":\" \")+Y;Z.indentComment=G,Z.lineComment=B,Z.stringifyComment=Q}),p6=S((Z)=>{var Q=\"flow\",G=\"block\",B=\"quoted\";function O(Y,U,H=\"flow\",{indentAtStart:z,lineWidth:V=80,minContentWidth:X=20,onFold:$,onOverflow:J}={}){if(!V||V<0)return Y;if(V<X)X=0;let W=Math.max(1+X,1+V-U.length);if(Y.length<=W)return Y;let K=[],F={},j=V-U.length;if(typeof z===\"number\")if(z>V-Math.max(2,X))K.push(0);else j=V-z;let R=void 0,q=void 0,I=!1,L=-1,A=-1,D=-1;if(H===G){if(L=_(Y,L,U.length),L!==-1)j=L+W}for(let T;T=Y[L+=1];){if(H===B&&T===\"\\\\\"){switch(A=L,Y[L+1]){case\"x\":L+=3;break;case\"u\":L+=5;break;case\"U\":L+=9;break;default:L+=1}D=L}if(T===`\n`){if(H===G)L=_(Y,L,U.length);j=L+U.length+W,R=void 0}else{if(T===\" \"&&q&&q!==\" \"&&q!==`\n`&&q!==\"\\t\"){let M=Y[L+1];if(M&&M!==\" \"&&M!==`\n`&&M!==\"\\t\")R=L}if(L>=j)if(R)K.push(R),j=R+W,R=void 0;else if(H===B){while(q===\" \"||q===\"\\t\")q=T,T=Y[L+=1],I=!0;let M=L>D+1?L-2:A-1;if(F[M])return Y;K.push(M),F[M]=!0,j=M+W,R=void 0}else I=!0}q=T}if(I&&J)J();if(K.length===0)return Y;if($)$();let N=Y.slice(0,K[0]);for(let T=0;T<K.length;++T){let M=K[T],C=K[T+1]||Y.length;if(M===0)N=`\n${U}${Y.slice(0,C)}`;else{if(H===B&&F[M])N+=`${Y[M]}\\\\`;N+=`\n${U}${Y.slice(M+1,C)}`}}return N}function _(Y,U,H){let z=U,V=U+1,X=Y[V];while(X===\" \"||X===\"\\t\")if(U<V+H)X=Y[++U];else{do X=Y[++U];while(X&&X!==`\n`);z=U,V=U+1,X=Y[V]}return z}Z.FOLD_BLOCK=G,Z.FOLD_FLOW=Q,Z.FOLD_QUOTED=B,Z.foldFlowLines=O}),w0=S((Z)=>{var Q=b(),G=p6(),B=(J,W)=>({indentAtStart:W?J.indent.length:J.indentAtStart,lineWidth:J.options.lineWidth,minContentWidth:J.options.minContentWidth}),O=(J)=>/^(%|---|\\.\\.\\.)/m.test(J);function _(J,W,K){if(!W||W<0)return!1;let F=W-K,j=J.length;if(j<=F)return!1;for(let R=0,q=0;R<j;++R)if(J[R]===`\n`){if(R-q>F)return!0;if(q=R+1,j-q<=F)return!1}return!0}function Y(J,W){let K=JSON.stringify(J);if(W.options.doubleQuotedAsJSON)return K;let{implicitKey:F}=W,j=W.options.doubleQuotedMinMultiLineLength,R=W.indent||(O(J)?\" \":\"\"),q=\"\",I=0;for(let L=0,A=K[L];A;A=K[++L]){if(A===\" \"&&K[L+1]===\"\\\\\"&&K[L+2]===\"n\")q+=K.slice(I,L)+\"\\\\ \",L+=1,I=L,A=\"\\\\\";if(A===\"\\\\\")switch(K[L+1]){case\"u\":{q+=K.slice(I,L);let D=K.substr(L+2,4);switch(D){case\"0000\":q+=\"\\\\0\";break;case\"0007\":q+=\"\\\\a\";break;case\"000b\":q+=\"\\\\v\";break;case\"001b\":q+=\"\\\\e\";break;case\"0085\":q+=\"\\\\N\";break;case\"00a0\":q+=\"\\\\_\";break;case\"2028\":q+=\"\\\\L\";break;case\"2029\":q+=\"\\\\P\";break;default:if(D.substr(0,2)===\"00\")q+=\"\\\\x\"+D.substr(2);else q+=K.substr(L,6)}L+=5,I=L+1}break;case\"n\":if(F||K[L+2]==='\"'||K.length<j)L+=1;else{q+=K.slice(I,L)+`\n\n`;while(K[L+2]===\"\\\\\"&&K[L+3]===\"n\"&&K[L+4]!=='\"')q+=`\n`,L+=2;if(q+=R,K[L+2]===\" \")q+=\"\\\\\";L+=1,I=L+1}break;default:L+=1}}return q=I?q+K.slice(I):K,F?q:G.foldFlowLines(q,R,G.FOLD_QUOTED,B(W,!1))}function U(J,W){if(W.options.singleQuote===!1||W.implicitKey&&J.includes(`\n`)||/[ \\t]\\n|\\n[ \\t]/.test(J))return Y(J,W);let K=W.indent||(O(J)?\" \":\"\"),F=\"'\"+J.replace(/'/g,\"''\").replace(/\\n+/g,`$&\n${K}`)+\"'\";return W.implicitKey?F:G.foldFlowLines(F,K,G.FOLD_FLOW,B(W,!1))}function H(J,W){let{singleQuote:K}=W.options,F;if(K===!1)F=Y;else{let j=J.includes('\"'),R=J.includes(\"'\");if(j&&!R)F=U;else if(R&&!j)F=Y;else F=K?U:Y}return F(J,W)}var z;try{z=new RegExp(`(^|(?<!\n))\n+(?!\n|$)`,\"g\")}catch{z=/\\n+(?!\\n|$)/g}function V({comment:J,type:W,value:K},F,j,R){let{blockQuote:q,commentString:I,lineWidth:L}=F.options;if(!q||/\\n[\\t ]+$/.test(K))return H(K,F);let A=F.indent||(F.forceBlockIndent||O(K)?\" \":\"\"),D=q===\"literal\"?!0:q===\"folded\"||W===Q.Scalar.BLOCK_FOLDED?!1:W===Q.Scalar.BLOCK_LITERAL?!0:!_(K,L,A.length);if(!K)return D?`|\n`:`>\n`;let N,T;for(T=K.length;T>0;--T){let P=K[T-1];if(P!==`\n`&&P!==\"\\t\"&&P!==\" \")break}let M=K.substring(T),C=M.indexOf(`\n`);if(C===-1)N=\"-\";else if(K===M||C!==M.length-1){if(N=\"+\",R)R()}else N=\"\";if(M){if(K=K.slice(0,-M.length),M[M.length-1]===`\n`)M=M.slice(0,-1);M=M.replace(z,`$&${A}`)}let E=!1,k,g=-1;for(k=0;k<K.length;++k){let P=K[k];if(P===\" \")E=!0;else if(P===`\n`)g=k;else break}let x=K.substring(0,g<k?g+1:k);if(x)K=K.substring(x.length),x=x.replace(/\\n+/g,`$&${A}`);let v=(E?A?\"2\":\"1\":\"\")+N;if(J){if(v+=\" \"+I(J.replace(/ ?[\\r\\n]+/g,\" \")),j)j()}if(!D){let P=K.replace(/\\n+/g,`\n$&`).replace(/(?:^|\\n)([\\t ].*)(?:([\\n\\t ]*)\\n(?![\\n\\t ]))?/g,\"$1$2\").replace(/\\n+/g,`$&${A}`),h=!1,f=B(F,!0);if(q!==\"folded\"&&W!==Q.Scalar.BLOCK_FOLDED)f.onOverflow=()=>{h=!0};let m=G.foldFlowLines(`${x}${P}${M}`,A,G.FOLD_BLOCK,f);if(!h)return`>${v}\n${A}${m}`}return K=K.replace(/\\n+/g,`$&${A}`),`|${v}\n${A}${x}${K}${M}`}function X(J,W,K,F){let{type:j,value:R}=J,{actualString:q,implicitKey:I,indent:L,indentStep:A,inFlow:D}=W;if(I&&R.includes(`\n`)||D&&/[[\\]{},]/.test(R))return H(R,W);if(/^[\\n\\t ,[\\]{}#&*!|>'\"%@`]|^[?-]$|^[?-][ \\t]|[\\n:][ \\t]|[ \\t]\\n|[\\n\\t ]#|[\\n\\t :]$/.test(R))return I||D||!R.includes(`\n`)?H(R,W):V(J,W,K,F);if(!I&&!D&&j!==Q.Scalar.PLAIN&&R.includes(`\n`))return V(J,W,K,F);if(O(R)){if(L===\"\")return W.forceBlockIndent=!0,V(J,W,K,F);else if(I&&L===A)return H(R,W)}let N=R.replace(/\\n+/g,`$&\n${L}`);if(q){let T=(E)=>E.default&&E.tag!==\"tag:yaml.org,2002:str\"&&E.test?.test(N),{compat:M,tags:C}=W.doc.schema;if(C.some(T)||M?.some(T))return H(R,W)}return I?N:G.foldFlowLines(N,L,G.FOLD_FLOW,B(W,!1))}function $(J,W,K,F){let{implicitKey:j,inFlow:R}=W,q=typeof J.value===\"string\"?J:Object.assign({},J,{value:String(J.value)}),{type:I}=J;if(I!==Q.Scalar.QUOTE_DOUBLE){if(/[\\x00-\\x08\\x0b-\\x1f\\x7f-\\x9f\\u{D800}-\\u{DFFF}]/u.test(q.value))I=Q.Scalar.QUOTE_DOUBLE}let L=(D)=>{switch(D){case Q.Scalar.BLOCK_FOLDED:case Q.Scalar.BLOCK_LITERAL:return j||R?H(q.value,W):V(q,W,K,F);case Q.Scalar.QUOTE_DOUBLE:return Y(q.value,W);case Q.Scalar.QUOTE_SINGLE:return U(q.value,W);case Q.Scalar.PLAIN:return X(q,W,K,F);default:return null}},A=L(I);if(A===null){let{defaultKeyType:D,defaultStringType:N}=W.options,T=j&&D||N;if(A=L(T),A===null)throw Error(`Unsupported default string type ${T}`)}return A}Z.stringifyString=$}),y0=S((Z)=>{var Q=e0(),G=y(),B=P0(),O=w0();function _(z,V){let X=Object.assign({blockQuote:!0,commentString:B.stringifyComment,defaultKeyType:null,defaultStringType:\"PLAIN\",directives:null,doubleQuotedAsJSON:!1,doubleQuotedMinMultiLineLength:40,falseStr:\"false\",flowCollectionPadding:!0,indentSeq:!0,lineWidth:80,minContentWidth:20,nullStr:\"null\",simpleKeys:!1,singleQuote:null,trailingComma:!1,trueStr:\"true\",verifyAliasOrder:!0},z.schema.toStringOptions,V),$;switch(X.collectionStyle){case\"block\":$=!1;break;case\"flow\":$=!0;break;default:$=null}return{anchors:new Set,doc:z,flowCollectionPadding:X.flowCollectionPadding?\" \":\"\",indent:\"\",indentStep:typeof X.indent===\"number\"?\" \".repeat(X.indent):\" \",inFlow:$,options:X}}function Y(z,V){if(V.tag){let J=z.filter((W)=>W.tag===V.tag);if(J.length>0)return J.find((W)=>W.format===V.format)??J[0]}let X=void 0,$;if(G.isScalar(V)){$=V.value;let J=z.filter((W)=>W.identify?.($));if(J.length>1){let W=J.filter((K)=>K.test);if(W.length>0)J=W}X=J.find((W)=>W.format===V.format)??J.find((W)=>!W.format)}else $=V,X=z.find((J)=>J.nodeClass&&$ instanceof J.nodeClass);if(!X){let J=$?.constructor?.name??($===null?\"null\":typeof $);throw Error(`Tag not resolved for ${J} value`)}return X}function U(z,V,{anchors:X,doc:$}){if(!$.directives)return\"\";let J=[],W=(G.isScalar(z)||G.isCollection(z))&&z.anchor;if(W&&Q.anchorIsValid(W))X.add(W),J.push(`&${W}`);let K=z.tag??(V.default?null:V.tag);if(K)J.push($.directives.tagString(K));return J.join(\" \")}function H(z,V,X,$){if(G.isPair(z))return z.toString(V,X,$);if(G.isAlias(z)){if(V.doc.directives)return z.toString(V);if(V.resolvedAliases?.has(z))throw TypeError(\"Cannot stringify circular structure without alias nodes\");else{if(V.resolvedAliases)V.resolvedAliases.add(z);else V.resolvedAliases=new Set([z]);z=z.resolve(V.doc)}}let J=void 0,W=G.isNode(z)?z:V.doc.createNode(z,{onTagObj:(j)=>J=j});J??(J=Y(V.doc.schema.tags,W));let K=U(W,J,V);if(K.length>0)V.indentAtStart=(V.indentAtStart??0)+K.length+1;let F=typeof J.stringify===\"function\"?J.stringify(W,V,X,$):G.isScalar(W)?O.stringifyString(W,V,X,$):W.toString(V,X,$);if(!K)return F;return G.isScalar(W)||F[0]===\"{\"||F[0]===\"[\"?`${K} ${F}`:`${K}\n${V.indent}${F}`}Z.createStringifyContext=_,Z.stringify=H}),d6=S((Z)=>{var Q=y(),G=b(),B=y0(),O=P0();function _({key:Y,value:U},H,z,V){let{allNullValues:X,doc:$,indent:J,indentStep:W,options:{commentString:K,indentSeq:F,simpleKeys:j}}=H,R=Q.isNode(Y)&&Y.comment||null;if(j){if(R)throw Error(\"With simple keys, key nodes cannot have comments\");if(Q.isCollection(Y)||!Q.isNode(Y)&&typeof Y===\"object\")throw Error(\"With simple keys, collection cannot be used as a key value\")}let q=!j&&(!Y||R&&U==null&&!H.inFlow||Q.isCollection(Y)||(Q.isScalar(Y)?Y.type===G.Scalar.BLOCK_FOLDED||Y.type===G.Scalar.BLOCK_LITERAL:typeof Y===\"object\"));H=Object.assign({},H,{allNullValues:!1,implicitKey:!q&&(j||!X),indent:J+W});let I=!1,L=!1,A=B.stringify(Y,H,()=>I=!0,()=>L=!0);if(!q&&!H.inFlow&&A.length>1024){if(j)throw Error(\"With simple keys, single line scalar must not span more than 1024 characters\");q=!0}if(H.inFlow){if(X||U==null){if(I&&z)z();return A===\"\"?\"?\":q?`? ${A}`:A}}else if(X&&!j||U==null&&q){if(A=`? ${A}`,R&&!I)A+=O.lineComment(A,H.indent,K(R));else if(L&&V)V();return A}if(I)R=null;if(q){if(R)A+=O.lineComment(A,H.indent,K(R));A=`? ${A}\n${J}:`}else if(A=`${A}:`,R)A+=O.lineComment(A,H.indent,K(R));let D,N,T;if(Q.isNode(U))D=!!U.spaceBefore,N=U.commentBefore,T=U.comment;else if(D=!1,N=null,T=null,U&&typeof U===\"object\")U=$.createNode(U);if(H.implicitKey=!1,!q&&!R&&Q.isScalar(U))H.indentAtStart=A.length+1;if(L=!1,!F&&W.length>=2&&!H.inFlow&&!q&&Q.isSeq(U)&&!U.flow&&!U.tag&&!U.anchor)H.indent=H.indent.substring(2);let M=!1,C=B.stringify(U,H,()=>M=!0,()=>L=!0),E=\" \";if(R||D||N){if(E=D?`\n`:\"\",N){let k=K(N);E+=`\n${O.indentComment(k,H.indent)}`}if(C===\"\"&&!H.inFlow){if(E===`\n`&&T)E=`\n\n`}else E+=`\n${H.indent}`}else if(!q&&Q.isCollection(U)){let k=C[0],g=C.indexOf(`\n`),x=g!==-1,l=H.inFlow??U.flow??U.items.length===0;if(x||!l){let v=!1;if(x&&(k===\"&\"||k===\"!\")){let P=C.indexOf(\" \");if(k===\"&\"&&P!==-1&&P<g&&C[P+1]===\"!\")P=C.indexOf(\" \",P+1);if(P===-1||g<P)v=!0}if(!v)E=`\n${H.indent}`}}else if(C===\"\"||C[0]===`\n`)E=\"\";if(A+=E+C,H.inFlow){if(M&&z)z()}else if(T&&!M)A+=O.lineComment(A,H.indent,K(T));else if(L&&V)V();return A}Z.stringifyPair=_}),fZ=S((Z)=>{var Q=T0(\"process\");function G(O,..._){if(O===\"debug\")console.log(..._)}function B(O,_){if(O===\"debug\"||O===\"warn\")if(typeof Q.emitWarning===\"function\")Q.emitWarning(_);else console.warn(_)}Z.debug=G,Z.warn=B}),$Z=S((Z)=>{var Q=y(),G=b(),B=\"<<\",O={identify:(H)=>H===B||typeof H===\"symbol\"&&H.description===B,default:\"key\",tag:\"tag:yaml.org,2002:merge\",test:/^<<$/,resolve:()=>Object.assign(new G.Scalar(Symbol(B)),{addToJSMap:Y}),stringify:()=>B},_=(H,z)=>(O.identify(z)||Q.isScalar(z)&&(!z.type||z.type===G.Scalar.PLAIN)&&O.identify(z.value))&&H?.doc.schema.tags.some((V)=>V.tag===O.tag&&V.default);function Y(H,z,V){if(V=H&&Q.isAlias(V)?V.resolve(H.doc):V,Q.isSeq(V))for(let X of V.items)U(H,z,X);else if(Array.isArray(V))for(let X of V)U(H,z,X);else U(H,z,V)}function U(H,z,V){let X=H&&Q.isAlias(V)?V.resolve(H.doc):V;if(!Q.isMap(X))throw Error(\"Merge sources must be maps or map aliases\");let $=X.toJSON(null,H,Map);for(let[J,W]of $)if(z instanceof Map){if(!z.has(J))z.set(J,W)}else if(z instanceof Set)z.add(J);else if(!Object.prototype.hasOwnProperty.call(z,J))Object.defineProperty(z,J,{value:W,writable:!0,enumerable:!0,configurable:!0});return z}Z.addMergeToJSMap=Y,Z.isMergeKey=_,Z.merge=O}),xZ=S((Z)=>{var Q=fZ(),G=$Z(),B=y0(),O=y(),_=X0();function Y(H,z,{key:V,value:X}){if(O.isNode(V)&&V.addToJSMap)V.addToJSMap(H,z,X);else if(G.isMergeKey(H,V))G.addMergeToJSMap(H,z,X);else{let $=_.toJS(V,\"\",H);if(z instanceof Map)z.set($,_.toJS(X,$,H));else if(z instanceof Set)z.add($);else{let J=U(V,$,H),W=_.toJS(X,J,H);if(J in z)Object.defineProperty(z,J,{value:W,writable:!0,enumerable:!0,configurable:!0});else z[J]=W}}return z}function U(H,z,V){if(z===null)return\"\";if(typeof z!==\"object\")return String(z);if(O.isNode(H)&&V?.doc){let X=B.createStringifyContext(V.doc,{});X.anchors=new Set;for(let J of V.anchors.keys())X.anchors.add(J.anchor);X.inFlow=!0,X.inStringifyKey=!0;let $=H.toString(X);if(!V.mapKeyWarned){let J=JSON.stringify($);if(J.length>40)J=J.substring(0,36)+'...\"';Q.warn(V.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${J}. Set mapAsMap: true to use object keys.`),V.mapKeyWarned=!0}return $}return JSON.stringify(z)}Z.addPairToJSMap=Y}),$0=S((Z)=>{var Q=E0(),G=d6(),B=xZ(),O=y();function _(U,H,z){let V=Q.createNode(U,void 0,z),X=Q.createNode(H,void 0,z);return new Y(V,X)}class Y{constructor(U,H=null){Object.defineProperty(this,O.NODE_TYPE,{value:O.PAIR}),this.key=U,this.value=H}clone(U){let{key:H,value:z}=this;if(O.isNode(H))H=H.clone(U);if(O.isNode(z))z=z.clone(U);return new Y(H,z)}toJSON(U,H){let z=H?.mapAsMap?new Map:{};return B.addPairToJSMap(H,z,this)}toString(U,H,z){return U?.doc?G.stringifyPair(this,U,H,z):JSON.stringify(this)}}Z.Pair=Y,Z.createPair=_}),gZ=S((Z)=>{var Q=y(),G=y0(),B=P0();function O(H,z,V){return(z.inFlow??H.flow?Y:_)(H,z,V)}function _({comment:H,items:z},V,{blockItemPrefix:X,flowChars:$,itemIndent:J,onChompKeep:W,onComment:K}){let{indent:F,options:{commentString:j}}=V,R=Object.assign({},V,{indent:J,type:null}),q=!1,I=[];for(let A=0;A<z.length;++A){let D=z[A],N=null;if(Q.isNode(D)){if(!q&&D.spaceBefore)I.push(\"\");if(U(V,I,D.commentBefore,q),D.comment)N=D.comment}else if(Q.isPair(D)){let M=Q.isNode(D.key)?D.key:null;if(M){if(!q&&M.spaceBefore)I.push(\"\");U(V,I,M.commentBefore,q)}}q=!1;let T=G.stringify(D,R,()=>N=null,()=>q=!0);if(N)T+=B.lineComment(T,J,j(N));if(q&&N)q=!1;I.push(X+T)}let L;if(I.length===0)L=$.start+$.end;else{L=I[0];for(let A=1;A<I.length;++A){let D=I[A];L+=D?`\n${F}${D}`:`\n`}}if(H){if(L+=`\n`+B.indentComment(j(H),F),K)K()}else if(q&&W)W();return L}function Y({items:H},z,{flowChars:V,itemIndent:X}){let{indent:$,indentStep:J,flowCollectionPadding:W,options:{commentString:K}}=z;X+=J;let F=Object.assign({},z,{indent:X,inFlow:!0,type:null}),j=!1,R=0,q=[];for(let A=0;A<H.length;++A){let D=H[A],N=null;if(Q.isNode(D)){if(D.spaceBefore)q.push(\"\");if(U(z,q,D.commentBefore,!1),D.comment)N=D.comment}else if(Q.isPair(D)){let M=Q.isNode(D.key)?D.key:null;if(M){if(M.spaceBefore)q.push(\"\");if(U(z,q,M.commentBefore,!1),M.comment)j=!0}let C=Q.isNode(D.value)?D.value:null;if(C){if(C.comment)N=C.comment;if(C.commentBefore)j=!0}else if(D.value==null&&M?.comment)N=M.comment}if(N)j=!0;let T=G.stringify(D,F,()=>N=null);if(j||(j=q.length>R||T.includes(`\n`)),A<H.length-1)T+=\",\";else if(z.options.trailingComma){if(z.options.lineWidth>0)j||(j=q.reduce((M,C)=>M+C.length+2,2)+(T.length+2)>z.options.lineWidth);if(j)T+=\",\"}if(N)T+=B.lineComment(T,X,K(N));q.push(T),R=q.length}let{start:I,end:L}=V;if(q.length===0)return I+L;else{if(!j){let A=q.reduce((D,N)=>D+N.length+2,2);j=z.options.lineWidth>0&&A>z.options.lineWidth}if(j){let A=I;for(let D of q)A+=D?`\n${J}${$}${D}`:`\n`;return`${A}\n${$}${L}`}else return`${I}${W}${q.join(\" \")}${W}${L}`}}function U({indent:H,options:{commentString:z}},V,X,$){if(X&&$)X=X.replace(/^\\n+/,\"\");if(X){let J=B.indentComment(z(X),H);V.push(J.trimStart())}}Z.stringifyCollection=O}),z0=S((Z)=>{var Q=gZ(),G=xZ(),B=XZ(),O=y(),_=$0(),Y=b();function U(z,V){let X=O.isScalar(V)?V.value:V;for(let $ of z)if(O.isPair($)){if($.key===V||$.key===X)return $;if(O.isScalar($.key)&&$.key.value===X)return $}return}class H extends B.Collection{static get tagName(){return\"tag:yaml.org,2002:map\"}constructor(z){super(O.MAP,z);this.items=[]}static from(z,V,X){let{keepUndefined:$,replacer:J}=X,W=new this(z),K=(F,j)=>{if(typeof J===\"function\")j=J.call(V,F,j);else if(Array.isArray(J)&&!J.includes(F))return;if(j!==void 0||$)W.items.push(_.createPair(F,j,X))};if(V instanceof Map)for(let[F,j]of V)K(F,j);else if(V&&typeof V===\"object\")for(let F of Object.keys(V))K(F,V[F]);if(typeof z.sortMapEntries===\"function\")W.items.sort(z.sortMapEntries);return W}add(z,V){let X;if(O.isPair(z))X=z;else if(!z||typeof z!==\"object\"||!(\"key\"in z))X=new _.Pair(z,z?.value);else X=new _.Pair(z.key,z.value);let $=U(this.items,X.key),J=this.schema?.sortMapEntries;if($){if(!V)throw Error(`Key ${X.key} already set`);if(O.isScalar($.value)&&Y.isScalarValue(X.value))$.value.value=X.value;else $.value=X.value}else if(J){let W=this.items.findIndex((K)=>J(X,K)<0);if(W===-1)this.items.push(X);else this.items.splice(W,0,X)}else this.items.push(X)}delete(z){let V=U(this.items,z);if(!V)return!1;return this.items.splice(this.items.indexOf(V),1).length>0}get(z,V){let $=U(this.items,z)?.value;return(!V&&O.isScalar($)?$.value:$)??void 0}has(z){return!!U(this.items,z)}set(z,V){this.add(new _.Pair(z,V),!0)}toJSON(z,V,X){let $=X?new X:V?.mapAsMap?new Map:{};if(V?.onCreate)V.onCreate($);for(let J of this.items)G.addPairToJSMap(V,$,J);return $}toString(z,V,X){if(!z)return JSON.stringify(this);for(let $ of this.items)if(!O.isPair($))throw Error(`Map items must all be pairs; found ${JSON.stringify($)} instead`);if(!z.allNullValues&&this.hasAllNullValues(!1))z=Object.assign({},z,{allNullValues:!0});return Q.stringifyCollection(this,z,{blockItemPrefix:\"\",flowChars:{start:\"{\",end:\"}\"},itemIndent:z.indent||\"\",onChompKeep:X,onComment:V})}}Z.YAMLMap=H,Z.findPair=U}),K0=S((Z)=>{var Q=y(),G=z0(),B={collection:\"map\",default:!0,nodeClass:G.YAMLMap,tag:\"tag:yaml.org,2002:map\",resolve(O,_){if(!Q.isMap(O))_(\"Expected a mapping for this tag\");return O},createNode:(O,_,Y)=>G.YAMLMap.from(O,_,Y)};Z.map=B}),Q0=S((Z)=>{var Q=E0(),G=gZ(),B=XZ(),O=y(),_=b(),Y=X0();class U extends B.Collection{static get tagName(){return\"tag:yaml.org,2002:seq\"}constructor(z){super(O.SEQ,z);this.items=[]}add(z){this.items.push(z)}delete(z){let V=H(z);if(typeof V!==\"number\")return!1;return this.items.splice(V,1).length>0}get(z,V){let X=H(z);if(typeof X!==\"number\")return;let $=this.items[X];return!V&&O.isScalar($)?$.value:$}has(z){let V=H(z);return typeof V===\"number\"&&V<this.items.length}set(z,V){let X=H(z);if(typeof X!==\"number\")throw Error(`Expected a valid index, not ${z}.`);let $=this.items[X];if(O.isScalar($)&&_.isScalarValue(V))$.value=V;else this.items[X]=V}toJSON(z,V){let X=[];if(V?.onCreate)V.onCreate(X);let $=0;for(let J of this.items)X.push(Y.toJS(J,String($++),V));return X}toString(z,V,X){if(!z)return JSON.stringify(this);return G.stringifyCollection(this,z,{blockItemPrefix:\"- \",flowChars:{start:\"[\",end:\"]\"},itemIndent:(z.indent||\"\")+\" \",onChompKeep:X,onComment:V})}static from(z,V,X){let{replacer:$}=X,J=new this(z);if(V&&Symbol.iterator in Object(V)){let W=0;for(let K of V){if(typeof $===\"function\"){let F=V instanceof Set?K:String(W++);K=$.call(V,F,K)}J.items.push(Q.createNode(K,void 0,X))}}return J}}function H(z){let V=O.isScalar(z)?z.value:z;if(V&&typeof V===\"string\")V=Number(V);return typeof V===\"number\"&&Number.isInteger(V)&&V>=0?V:null}Z.YAMLSeq=U}),_0=S((Z)=>{var Q=y(),G=Q0(),B={collection:\"seq\",default:!0,nodeClass:G.YAMLSeq,tag:\"tag:yaml.org,2002:seq\",resolve(O,_){if(!Q.isSeq(O))_(\"Expected a sequence for this tag\");return O},createNode:(O,_,Y)=>G.YAMLSeq.from(O,_,Y)};Z.seq=B}),k0=S((Z)=>{var Q=w0(),G={identify:(B)=>typeof B===\"string\",default:!0,tag:\"tag:yaml.org,2002:str\",resolve:(B)=>B,stringify(B,O,_,Y){return O=Object.assign({actualString:!0},O),Q.stringifyString(B,O,_,Y)}};Z.string=G}),zZ=S((Z)=>{var Q=b(),G={identify:(B)=>B==null,createNode:()=>new Q.Scalar(null),default:!0,tag:\"tag:yaml.org,2002:null\",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new Q.Scalar(null),stringify:({source:B},O)=>typeof B===\"string\"&&G.test.test(B)?B:O.options.nullStr};Z.nullTag=G}),vZ=S((Z)=>{var Q=b(),G={identify:(B)=>typeof B===\"boolean\",default:!0,tag:\"tag:yaml.org,2002:bool\",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:(B)=>new Q.Scalar(B[0]===\"t\"||B[0]===\"T\"),stringify({source:B,value:O},_){if(B&&G.test.test(B)){let Y=B[0]===\"t\"||B[0]===\"T\";if(O===Y)return B}return O?_.options.trueStr:_.options.falseStr}};Z.boolTag=G}),O0=S((Z)=>{function Q({format:G,minFractionDigits:B,tag:O,value:_}){if(typeof _===\"bigint\")return String(_);let Y=typeof _===\"number\"?_:Number(_);if(!isFinite(Y))return isNaN(Y)?\".nan\":Y<0?\"-.inf\":\".inf\";let U=Object.is(_,-0)?\"-0\":JSON.stringify(_);if(!G&&B&&(!O||O===\"tag:yaml.org,2002:float\")&&/^\\d/.test(U)){let H=U.indexOf(\".\");if(H<0)H=U.length,U+=\".\";let z=B-(U.length-H-1);while(z-- >0)U+=\"0\"}return U}Z.stringifyNumber=Q}),bZ=S((Z)=>{var Q=b(),G=O0(),B={identify:(Y)=>typeof Y===\"number\",default:!0,tag:\"tag:yaml.org,2002:float\",test:/^(?:[-+]?\\.(?:inf|Inf|INF)|\\.nan|\\.NaN|\\.NAN)$/,resolve:(Y)=>Y.slice(-3).toLowerCase()===\"nan\"?NaN:Y[0]===\"-\"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:G.stringifyNumber},O={identify:(Y)=>typeof Y===\"number\",default:!0,tag:\"tag:yaml.org,2002:float\",format:\"EXP\",test:/^[-+]?(?:\\.[0-9]+|[0-9]+(?:\\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:(Y)=>parseFloat(Y),stringify(Y){let U=Number(Y.value);return isFinite(U)?U.toExponential():G.stringifyNumber(Y)}},_={identify:(Y)=>typeof Y===\"number\",default:!0,tag:\"tag:yaml.org,2002:float\",test:/^[-+]?(?:\\.[0-9]+|[0-9]+\\.[0-9]*)$/,resolve(Y){let U=new Q.Scalar(parseFloat(Y)),H=Y.indexOf(\".\");if(H!==-1&&Y[Y.length-1]===\"0\")U.minFractionDigits=Y.length-H-1;return U},stringify:G.stringifyNumber};Z.float=_,Z.floatExp=O,Z.floatNaN=B}),hZ=S((Z)=>{var Q=O0(),G=(H)=>typeof H===\"bigint\"||Number.isInteger(H),B=(H,z,V,{intAsBigInt:X})=>X?BigInt(H):parseInt(H.substring(z),V);function O(H,z,V){let{value:X}=H;if(G(X)&&X>=0)return V+X.toString(z);return Q.stringifyNumber(H)}var _={identify:(H)=>G(H)&&H>=0,default:!0,tag:\"tag:yaml.org,2002:int\",format:\"OCT\",test:/^0o[0-7]+$/,resolve:(H,z,V)=>B(H,2,8,V),stringify:(H)=>O(H,8,\"0o\")},Y={identify:G,default:!0,tag:\"tag:yaml.org,2002:int\",test:/^[-+]?[0-9]+$/,resolve:(H,z,V)=>B(H,0,10,V),stringify:Q.stringifyNumber},U={identify:(H)=>G(H)&&H>=0,default:!0,tag:\"tag:yaml.org,2002:int\",format:\"HEX\",test:/^0x[0-9a-fA-F]+$/,resolve:(H,z,V)=>B(H,2,16,V),stringify:(H)=>O(H,16,\"0x\")};Z.int=Y,Z.intHex=U,Z.intOct=_}),l6=S((Z)=>{var Q=K0(),G=zZ(),B=_0(),O=k0(),_=vZ(),Y=bZ(),U=hZ(),H=[Q.map,B.seq,O.string,G.nullTag,_.boolTag,U.intOct,U.int,U.intHex,Y.floatNaN,Y.floatExp,Y.float];Z.schema=H}),c6=S((Z)=>{var Q=b(),G=K0(),B=_0();function O(z){return typeof z===\"bigint\"||Number.isInteger(z)}var _=({value:z})=>JSON.stringify(z),Y=[{identify:(z)=>typeof z===\"string\",default:!0,tag:\"tag:yaml.org,2002:str\",resolve:(z)=>z,stringify:_},{identify:(z)=>z==null,createNode:()=>new Q.Scalar(null),default:!0,tag:\"tag:yaml.org,2002:null\",test:/^null$/,resolve:()=>null,stringify:_},{identify:(z)=>typeof z===\"boolean\",default:!0,tag:\"tag:yaml.org,2002:bool\",test:/^true$|^false$/,resolve:(z)=>z===\"true\",stringify:_},{identify:O,default:!0,tag:\"tag:yaml.org,2002:int\",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:(z,V,{intAsBigInt:X})=>X?BigInt(z):parseInt(z,10),stringify:({value:z})=>O(z)?z.toString():JSON.stringify(z)},{identify:(z)=>typeof z===\"number\",default:!0,tag:\"tag:yaml.org,2002:float\",test:/^-?(?:0|[1-9][0-9]*)(?:\\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:(z)=>parseFloat(z),stringify:_}],U={default:!0,tag:\"\",test:/^/,resolve(z,V){return V(`Unresolved plain scalar ${JSON.stringify(z)}`),z}},H=[G.map,B.seq].concat(Y,U);Z.schema=H}),mZ=S((Z)=>{var Q=T0(\"buffer\"),G=b(),B=w0(),O={identify:(_)=>_ instanceof Uint8Array,default:!1,tag:\"tag:yaml.org,2002:binary\",resolve(_,Y){if(typeof Q.Buffer===\"function\")return Q.Buffer.from(_,\"base64\");else if(typeof atob===\"function\"){let U=atob(_.replace(/[\\n\\r]/g,\"\")),H=new Uint8Array(U.length);for(let z=0;z<U.length;++z)H[z]=U.charCodeAt(z);return H}else return Y(\"This environment does not support reading binary tags; either Buffer or atob is required\"),_},stringify({comment:_,type:Y,value:U},H,z,V){if(!U)return\"\";let X=U,$;if(typeof Q.Buffer===\"function\")$=X instanceof Q.Buffer?X.toString(\"base64\"):Q.Buffer.from(X.buffer).toString(\"base64\");else if(typeof btoa===\"function\"){let J=\"\";for(let W=0;W<X.length;++W)J+=String.fromCharCode(X[W]);$=btoa(J)}else throw Error(\"This environment does not support writing binary tags; either Buffer or btoa is required\");if(Y??(Y=G.Scalar.BLOCK_LITERAL),Y!==G.Scalar.QUOTE_DOUBLE){let J=Math.max(H.options.lineWidth-H.indent.length,H.options.minContentWidth),W=Math.ceil($.length/J),K=Array(W);for(let F=0,j=0;F<W;++F,j+=J)K[F]=$.substr(j,J);$=K.join(Y===G.Scalar.BLOCK_LITERAL?`\n`:\" \")}return B.stringifyString({comment:_,type:Y,value:$},H,z,V)}};Z.binary=O}),QZ=S((Z)=>{var Q=y(),G=$0(),B=b(),O=Q0();function _(H,z){if(Q.isSeq(H))for(let V=0;V<H.items.length;++V){let X=H.items[V];if(Q.isPair(X))continue;else if(Q.isMap(X)){if(X.items.length>1)z(\"Each pair must have its own sequence indicator\");let $=X.items[0]||new G.Pair(new B.Scalar(null));if(X.commentBefore)$.key.commentBefore=$.key.commentBefore?`${X.commentBefore}\n${$.key.commentBefore}`:X.commentBefore;if(X.comment){let J=$.value??$.key;J.comment=J.comment?`${X.comment}\n${J.comment}`:X.comment}X=$}H.items[V]=Q.isPair(X)?X:new G.Pair(X)}else z(\"Expected a sequence for this tag\");return H}function Y(H,z,V){let{replacer:X}=V,$=new O.YAMLSeq(H);$.tag=\"tag:yaml.org,2002:pairs\";let J=0;if(z&&Symbol.iterator in Object(z))for(let W of z){if(typeof X===\"function\")W=X.call(z,String(J++),W);let K,F;if(Array.isArray(W))if(W.length===2)K=W[0],F=W[1];else throw TypeError(`Expected [key, value] tuple: ${W}`);else if(W&&W instanceof Object){let j=Object.keys(W);if(j.length===1)K=j[0],F=W[K];else throw TypeError(`Expected tuple with one key, not ${j.length} keys`)}else K=W;$.items.push(G.createPair(K,F,V))}return $}var U={collection:\"seq\",default:!1,tag:\"tag:yaml.org,2002:pairs\",resolve:_,createNode:Y};Z.createPairs=Y,Z.pairs=U,Z.resolvePairs=_}),uZ=S((Z)=>{var Q=y(),G=X0(),B=z0(),O=Q0(),_=QZ();class Y extends O.YAMLSeq{constructor(){super();this.add=B.YAMLMap.prototype.add.bind(this),this.delete=B.YAMLMap.prototype.delete.bind(this),this.get=B.YAMLMap.prototype.get.bind(this),this.has=B.YAMLMap.prototype.has.bind(this),this.set=B.YAMLMap.prototype.set.bind(this),this.tag=Y.tag}toJSON(H,z){if(!z)return super.toJSON(H);let V=new Map;if(z?.onCreate)z.onCreate(V);for(let X of this.items){let $,J;if(Q.isPair(X))$=G.toJS(X.key,\"\",z),J=G.toJS(X.value,$,z);else $=G.toJS(X,\"\",z);if(V.has($))throw Error(\"Ordered maps must not include duplicate keys\");V.set($,J)}return V}static from(H,z,V){let X=_.createPairs(H,z,V),$=new this;return $.items=X.items,$}}Y.tag=\"tag:yaml.org,2002:omap\";var U={collection:\"seq\",identify:(H)=>H instanceof Map,nodeClass:Y,default:!1,tag:\"tag:yaml.org,2002:omap\",resolve(H,z){let V=_.resolvePairs(H,z),X=[];for(let{key:$}of V.items)if(Q.isScalar($))if(X.includes($.value))z(`Ordered maps must not include duplicate keys: ${$.value}`);else X.push($.value);return Object.assign(new Y,V)},createNode:(H,z,V)=>Y.from(H,z,V)};Z.YAMLOMap=Y,Z.omap=U}),i6=S((Z)=>{var Q=b();function G({value:_,source:Y},U){if(Y&&(_?B:O).test.test(Y))return Y;return _?U.options.trueStr:U.options.falseStr}var B={identify:(_)=>_===!0,default:!0,tag:\"tag:yaml.org,2002:bool\",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new Q.Scalar(!0),stringify:G},O={identify:(_)=>_===!1,default:!0,tag:\"tag:yaml.org,2002:bool\",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new Q.Scalar(!1),stringify:G};Z.falseTag=O,Z.trueTag=B}),n6=S((Z)=>{var Q=b(),G=O0(),B={identify:(Y)=>typeof Y===\"number\",default:!0,tag:\"tag:yaml.org,2002:float\",test:/^(?:[-+]?\\.(?:inf|Inf|INF)|\\.nan|\\.NaN|\\.NAN)$/,resolve:(Y)=>Y.slice(-3).toLowerCase()===\"nan\"?NaN:Y[0]===\"-\"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:G.stringifyNumber},O={identify:(Y)=>typeof Y===\"number\",default:!0,tag:\"tag:yaml.org,2002:float\",format:\"EXP\",test:/^[-+]?(?:[0-9][0-9_]*)?(?:\\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:(Y)=>parseFloat(Y.replace(/_/g,\"\")),stringify(Y){let U=Number(Y.value);return isFinite(U)?U.toExponential():G.stringifyNumber(Y)}},_={identify:(Y)=>typeof Y===\"number\",default:!0,tag:\"tag:yaml.org,2002:float\",test:/^[-+]?(?:[0-9][0-9_]*)?\\.[0-9_]*$/,resolve(Y){let U=new Q.Scalar(parseFloat(Y.replace(/_/g,\"\"))),H=Y.indexOf(\".\");if(H!==-1){let z=Y.substring(H+1).replace(/_/g,\"\");if(z[z.length-1]===\"0\")U.minFractionDigits=z.length}return U},stringify:G.stringifyNumber};Z.float=_,Z.floatExp=O,Z.floatNaN=B}),s6=S((Z)=>{var Q=O0(),G=(z)=>typeof z===\"bigint\"||Number.isInteger(z);function B(z,V,X,{intAsBigInt:$}){let J=z[0];if(J===\"-\"||J===\"+\")V+=1;if(z=z.substring(V).replace(/_/g,\"\"),$){switch(X){case 2:z=`0b${z}`;break;case 8:z=`0o${z}`;break;case 16:z=`0x${z}`;break}let K=BigInt(z);return J===\"-\"?BigInt(-1)*K:K}let W=parseInt(z,X);return J===\"-\"?-1*W:W}function O(z,V,X){let{value:$}=z;if(G($)){let J=$.toString(V);return $<0?\"-\"+X+J.substr(1):X+J}return Q.stringifyNumber(z)}var _={identify:G,default:!0,tag:\"tag:yaml.org,2002:int\",format:\"BIN\",test:/^[-+]?0b[0-1_]+$/,resolve:(z,V,X)=>B(z,2,2,X),stringify:(z)=>O(z,2,\"0b\")},Y={identify:G,default:!0,tag:\"tag:yaml.org,2002:int\",format:\"OCT\",test:/^[-+]?0[0-7_]+$/,resolve:(z,V,X)=>B(z,1,8,X),stringify:(z)=>O(z,8,\"0\")},U={identify:G,default:!0,tag:\"tag:yaml.org,2002:int\",test:/^[-+]?[0-9][0-9_]*$/,resolve:(z,V,X)=>B(z,0,10,X),stringify:Q.stringifyNumber},H={identify:G,default:!0,tag:\"tag:yaml.org,2002:int\",format:\"HEX\",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:(z,V,X)=>B(z,2,16,X),stringify:(z)=>O(z,16,\"0x\")};Z.int=U,Z.intBin=_,Z.intHex=H,Z.intOct=Y}),pZ=S((Z)=>{var Q=y(),G=$0(),B=z0();class O extends B.YAMLMap{constructor(Y){super(Y);this.tag=O.tag}add(Y){let U;if(Q.isPair(Y))U=Y;else if(Y&&typeof Y===\"object\"&&\"key\"in Y&&\"value\"in Y&&Y.value===null)U=new G.Pair(Y.key,null);else U=new G.Pair(Y,null);if(!B.findPair(this.items,U.key))this.items.push(U)}get(Y,U){let H=B.findPair(this.items,Y);return!U&&Q.isPair(H)?Q.isScalar(H.key)?H.key.value:H.key:H}set(Y,U){if(typeof U!==\"boolean\")throw Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof U}`);let H=B.findPair(this.items,Y);if(H&&!U)this.items.splice(this.items.indexOf(H),1);else if(!H&&U)this.items.push(new G.Pair(Y))}toJSON(Y,U){return super.toJSON(Y,U,Set)}toString(Y,U,H){if(!Y)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},Y,{allNullValues:!0}),U,H);else throw Error(\"Set items must all have null values\")}static from(Y,U,H){let{replacer:z}=H,V=new this(Y);if(U&&Symbol.iterator in Object(U))for(let X of U){if(typeof z===\"function\")X=z.call(U,X,X);V.items.push(G.createPair(X,null,H))}return V}}O.tag=\"tag:yaml.org,2002:set\";var _={collection:\"map\",identify:(Y)=>Y instanceof Set,nodeClass:O,default:!1,tag:\"tag:yaml.org,2002:set\",createNode:(Y,U,H)=>O.from(Y,U,H),resolve(Y,U){if(Q.isMap(Y))if(Y.hasAllNullValues(!0))return Object.assign(new O,Y);else U(\"Set items must all have null values\");else U(\"Expected a mapping for this tag\");return Y}};Z.YAMLSet=O,Z.set=_}),dZ=S((Z)=>{var Q=O0();function G(U,H){let z=U[0],V=z===\"-\"||z===\"+\"?U.substring(1):U,X=(J)=>H?BigInt(J):Number(J),$=V.replace(/_/g,\"\").split(\":\").reduce((J,W)=>J*X(60)+X(W),X(0));return z===\"-\"?X(-1)*$:$}function B(U){let{value:H}=U,z=(J)=>J;if(typeof H===\"bigint\")z=(J)=>BigInt(J);else if(isNaN(H)||!isFinite(H))return Q.stringifyNumber(U);let V=\"\";if(H<0)V=\"-\",H*=z(-1);let X=z(60),$=[H%X];if(H<60)$.unshift(0);else if(H=(H-$[0])/X,$.unshift(H%X),H>=60)H=(H-$[0])/X,$.unshift(H);return V+$.map((J)=>String(J).padStart(2,\"0\")).join(\":\").replace(/000000\\d*$/,\"\")}var O={identify:(U)=>typeof U===\"bigint\"||Number.isInteger(U),default:!0,tag:\"tag:yaml.org,2002:int\",format:\"TIME\",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/,resolve:(U,H,{intAsBigInt:z})=>G(U,z),stringify:B},_={identify:(U)=>typeof U===\"number\",default:!0,tag:\"tag:yaml.org,2002:float\",format:\"TIME\",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\.[0-9_]*$/,resolve:(U)=>G(U,!1),stringify:B},Y={identify:(U)=>U instanceof Date,default:!0,tag:\"tag:yaml.org,2002:timestamp\",test:RegExp(\"^([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\\\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\\\.[0-9]+)?)(?:[ \\\\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?$\"),resolve(U){let H=U.match(Y.test);if(!H)throw Error(\"!!timestamp expects a date, starting with yyyy-mm-dd\");let[,z,V,X,$,J,W]=H.map(Number),K=H[7]?Number((H[7]+\"00\").substr(1,3)):0,F=Date.UTC(z,V-1,X,$||0,J||0,W||0,K),j=H[8];if(j&&j!==\"Z\"){let R=G(j,!1);if(Math.abs(R)<30)R*=60;F-=60000*R}return new Date(F)},stringify:({value:U})=>U?.toISOString().replace(/(T00:00:00)?\\.000Z$/,\"\")??\"\"};Z.floatTime=_,Z.intTime=O,Z.timestamp=Y}),a6=S((Z)=>{var Q=K0(),G=zZ(),B=_0(),O=k0(),_=mZ(),Y=i6(),U=n6(),H=s6(),z=$Z(),V=uZ(),X=QZ(),$=pZ(),J=dZ(),W=[Q.map,B.seq,O.string,G.nullTag,Y.trueTag,Y.falseTag,H.intBin,H.intOct,H.int,H.intHex,U.floatNaN,U.floatExp,U.float,_.binary,z.merge,V.omap,X.pairs,$.set,J.intTime,J.floatTime,J.timestamp];Z.schema=W}),r6=S((Z)=>{var Q=K0(),G=zZ(),B=_0(),O=k0(),_=vZ(),Y=bZ(),U=hZ(),H=l6(),z=c6(),V=mZ(),X=$Z(),$=uZ(),J=QZ(),W=a6(),K=pZ(),F=dZ(),j=new Map([[\"core\",H.schema],[\"failsafe\",[Q.map,B.seq,O.string]],[\"json\",z.schema],[\"yaml11\",W.schema],[\"yaml-1.1\",W.schema]]),R={binary:V.binary,bool:_.boolTag,float:Y.float,floatExp:Y.floatExp,floatNaN:Y.floatNaN,floatTime:F.floatTime,int:U.int,intHex:U.intHex,intOct:U.intOct,intTime:F.intTime,map:Q.map,merge:X.merge,null:G.nullTag,omap:$.omap,pairs:J.pairs,seq:B.seq,set:K.set,timestamp:F.timestamp},q={\"tag:yaml.org,2002:binary\":V.binary,\"tag:yaml.org,2002:merge\":X.merge,\"tag:yaml.org,2002:omap\":$.omap,\"tag:yaml.org,2002:pairs\":J.pairs,\"tag:yaml.org,2002:set\":K.set,\"tag:yaml.org,2002:timestamp\":F.timestamp};function I(L,A,D){let N=j.get(A);if(N&&!L)return D&&!N.includes(X.merge)?N.concat(X.merge):N.slice();let T=N;if(!T)if(Array.isArray(L))T=[];else{let M=Array.from(j.keys()).filter((C)=>C!==\"yaml11\").map((C)=>JSON.stringify(C)).join(\", \");throw Error(`Unknown schema \"${A}\"; use one of ${M} or define customTags array`)}if(Array.isArray(L))for(let M of L)T=T.concat(M);else if(typeof L===\"function\")T=L(T.slice());if(D)T=T.concat(X.merge);return T.reduce((M,C)=>{let E=typeof C===\"string\"?R[C]:C;if(!E){let k=JSON.stringify(C),g=Object.keys(R).map((x)=>JSON.stringify(x)).join(\", \");throw Error(`Unknown custom tag ${k}; use one of ${g}`)}if(!M.includes(E))M.push(E);return M},[])}Z.coreKnownTags=q,Z.getTags=I}),lZ=S((Z)=>{var Q=y(),G=K0(),B=_0(),O=k0(),_=r6(),Y=(H,z)=>H.key<z.key?-1:H.key>z.key?1:0;class U{constructor({compat:H,customTags:z,merge:V,resolveKnownTags:X,schema:$,sortMapEntries:J,toStringDefaults:W}){this.compat=Array.isArray(H)?_.getTags(H,\"compat\"):H?_.getTags(null,H):null,this.name=typeof $===\"string\"&&$||\"core\",this.knownTags=X?_.coreKnownTags:{},this.tags=_.getTags(z,this.name,V),this.toStringOptions=W??null,Object.defineProperty(this,Q.MAP,{value:G.map}),Object.defineProperty(this,Q.SCALAR,{value:O.string}),Object.defineProperty(this,Q.SEQ,{value:B.seq}),this.sortMapEntries=typeof J===\"function\"?J:J===!0?Y:null}clone(){let H=Object.create(U.prototype,Object.getOwnPropertyDescriptors(this));return H.tags=this.tags.slice(),H}}Z.Schema=U}),o6=S((Z)=>{var Q=y(),G=y0(),B=P0();function O(_,Y){let U=[],H=Y.directives===!0;if(Y.directives!==!1&&_.directives){let J=_.directives.toString(_);if(J)U.push(J),H=!0;else if(_.directives.docStart)H=!0}if(H)U.push(\"---\");let z=G.createStringifyContext(_,Y),{commentString:V}=z.options;if(_.commentBefore){if(U.length!==1)U.unshift(\"\");let J=V(_.commentBefore);U.unshift(B.indentComment(J,\"\"))}let X=!1,$=null;if(_.contents){if(Q.isNode(_.contents)){if(_.contents.spaceBefore&&H)U.push(\"\");if(_.contents.commentBefore){let K=V(_.contents.commentBefore);U.push(B.indentComment(K,\"\"))}z.forceBlockIndent=!!_.comment,$=_.contents.comment}let J=$?void 0:()=>X=!0,W=G.stringify(_.contents,z,()=>$=null,J);if($)W+=B.lineComment(W,\"\",V($));if((W[0]===\"|\"||W[0]===\">\")&&U[U.length-1]===\"---\")U[U.length-1]=`--- ${W}`;else U.push(W)}else U.push(G.stringify(_.contents,z));if(_.directives?.docEnd)if(_.comment){let J=V(_.comment);if(J.includes(`\n`))U.push(\"...\"),U.push(B.indentComment(J,\"\"));else U.push(`... ${J}`)}else U.push(\"...\");else{let J=_.comment;if(J&&X)J=J.replace(/^\\n+/,\"\");if(J){if((!X||$)&&U[U.length-1]!==\"\")U.push(\"\");U.push(B.indentComment(V(J),\"\"))}}return U.join(`\n`)+`\n`}Z.stringifyDocument=O}),f0=S((Z)=>{var Q=C0(),G=XZ(),B=y(),O=$0(),_=X0(),Y=lZ(),U=o6(),H=e0(),z=kZ(),V=E0(),X=yZ();class ${constructor(W,K,F){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,B.NODE_TYPE,{value:B.DOC});let j=null;if(typeof K===\"function\"||Array.isArray(K))j=K;else if(F===void 0&&K)F=K,K=void 0;let R=Object.assign({intAsBigInt:!1,keepSourceTokens:!1,logLevel:\"warn\",prettyErrors:!0,strict:!0,stringKeys:!1,uniqueKeys:!0,version:\"1.2\"},F);this.options=R;let{version:q}=R;if(F?._directives){if(this.directives=F._directives.atDocument(),this.directives.yaml.explicit)q=this.directives.yaml.version}else this.directives=new X.Directives({version:q});this.setSchema(q,F),this.contents=W===void 0?null:this.createNode(W,j,F)}clone(){let W=Object.create($.prototype,{[B.NODE_TYPE]:{value:B.DOC}});if(W.commentBefore=this.commentBefore,W.comment=this.comment,W.errors=this.errors.slice(),W.warnings=this.warnings.slice(),W.options=Object.assign({},this.options),this.directives)W.directives=this.directives.clone();if(W.schema=this.schema.clone(),W.contents=B.isNode(this.contents)?this.contents.clone(W.schema):this.contents,this.range)W.range=this.range.slice();return W}add(W){if(J(this.contents))this.contents.add(W)}addIn(W,K){if(J(this.contents))this.contents.addIn(W,K)}createAlias(W,K){if(!W.anchor){let F=H.anchorNames(this);W.anchor=!K||F.has(K)?H.findNewAnchor(K||\"a\",F):K}return new Q.Alias(W.anchor)}createNode(W,K,F){let j=void 0;if(typeof K===\"function\")W=K.call({\"\":W},\"\",W),j=K;else if(Array.isArray(K)){let k=(x)=>typeof x===\"number\"||x instanceof String||x instanceof Number,g=K.filter(k).map(String);if(g.length>0)K=K.concat(g);j=K}else if(F===void 0&&K)F=K,K=void 0;let{aliasDuplicateObjects:R,anchorPrefix:q,flow:I,keepUndefined:L,onTagObj:A,tag:D}=F??{},{onAnchor:N,setAnchors:T,sourceObjects:M}=H.createNodeAnchors(this,q||\"a\"),C={aliasDuplicateObjects:R??!0,keepUndefined:L??!1,onAnchor:N,onTagObj:A,replacer:j,schema:this.schema,sourceObjects:M},E=V.createNode(W,D,C);if(I&&B.isCollection(E))E.flow=!0;return T(),E}createPair(W,K,F={}){let j=this.createNode(W,null,F),R=this.createNode(K,null,F);return new O.Pair(j,R)}delete(W){return J(this.contents)?this.contents.delete(W):!1}deleteIn(W){if(G.isEmptyPath(W)){if(this.contents==null)return!1;return this.contents=null,!0}return J(this.contents)?this.contents.deleteIn(W):!1}get(W,K){return B.isCollection(this.contents)?this.contents.get(W,K):void 0}getIn(W,K){if(G.isEmptyPath(W))return!K&&B.isScalar(this.contents)?this.contents.value:this.contents;return B.isCollection(this.contents)?this.contents.getIn(W,K):void 0}has(W){return B.isCollection(this.contents)?this.contents.has(W):!1}hasIn(W){if(G.isEmptyPath(W))return this.contents!==void 0;return B.isCollection(this.contents)?this.contents.hasIn(W):!1}set(W,K){if(this.contents==null)this.contents=G.collectionFromPath(this.schema,[W],K);else if(J(this.contents))this.contents.set(W,K)}setIn(W,K){if(G.isEmptyPath(W))this.contents=K;else if(this.contents==null)this.contents=G.collectionFromPath(this.schema,Array.from(W),K);else if(J(this.contents))this.contents.setIn(W,K)}setSchema(W,K={}){if(typeof W===\"number\")W=String(W);let F;switch(W){case\"1.1\":if(this.directives)this.directives.yaml.version=\"1.1\";else this.directives=new X.Directives({version:\"1.1\"});F={resolveKnownTags:!1,schema:\"yaml-1.1\"};break;case\"1.2\":case\"next\":if(this.directives)this.directives.yaml.version=W;else this.directives=new X.Directives({version:W});F={resolveKnownTags:!0,schema:\"core\"};break;case null:if(this.directives)delete this.directives;F=null;break;default:{let j=JSON.stringify(W);throw Error(`Expected '1.1', '1.2' or null as first argument, but found: ${j}`)}}if(K.schema instanceof Object)this.schema=K.schema;else if(F)this.schema=new Y.Schema(Object.assign(F,K));else throw Error(\"With a null YAML version, the { schema: Schema } option is required\")}toJS({json:W,jsonArg:K,mapAsMap:F,maxAliasCount:j,onAnchor:R,reviver:q}={}){let I={anchors:new Map,doc:this,keep:!W,mapAsMap:F===!0,mapKeyWarned:!1,maxAliasCount:typeof j===\"number\"?j:100},L=_.toJS(this.contents,K??\"\",I);if(typeof R===\"function\")for(let{count:A,res:D}of I.anchors.values())R(D,A);return typeof q===\"function\"?z.applyReviver(q,{\"\":L},\"\",L):L}toJSON(W,K){return this.toJS({json:!0,jsonArg:W,mapAsMap:!1,onAnchor:K})}toString(W={}){if(this.errors.length>0)throw Error(\"Document with errors cannot be stringified\");if(\"indent\"in W&&(!Number.isInteger(W.indent)||Number(W.indent)<=0)){let K=JSON.stringify(W.indent);throw Error(`\"indent\" option must be a positive integer, not ${K}`)}return U.stringifyDocument(this,W)}}function J(W){if(B.isCollection(W))return!0;throw Error(\"Expected a YAML collection as document contents\")}Z.Document=$}),x0=S((Z)=>{class Q extends Error{constructor(_,Y,U,H){super();this.name=_,this.code=U,this.message=H,this.pos=Y}}class G extends Q{constructor(_,Y,U){super(\"YAMLParseError\",_,Y,U)}}class B extends Q{constructor(_,Y,U){super(\"YAMLWarning\",_,Y,U)}}var O=(_,Y)=>(U)=>{if(U.pos[0]===-1)return;U.linePos=U.pos.map(($)=>Y.linePos($));let{line:H,col:z}=U.linePos[0];U.message+=` at line ${H}, column ${z}`;let V=z-1,X=_.substring(Y.lineStarts[H-1],Y.lineStarts[H]).replace(/[\\n\\r]+$/,\"\");if(V>=60&&X.length>80){let $=Math.min(V-39,X.length-79);X=\"\u2026\"+X.substring($),V-=$-1}if(X.length>80)X=X.substring(0,79)+\"\u2026\";if(H>1&&/^ *$/.test(X.substring(0,V))){let $=_.substring(Y.lineStarts[H-2],Y.lineStarts[H-1]);if($.length>80)$=$.substring(0,79)+`\u2026\n`;X=$+X}if(/[^ ]/.test(X)){let $=1,J=U.linePos[1];if(J?.line===H&&J.col>z)$=Math.max(1,Math.min(J.col-z,80-V));let W=\" \".repeat(V)+\"^\".repeat($);U.message+=`:\n\n${X}\n${W}\n`}};Z.YAMLError=Q,Z.YAMLParseError=G,Z.YAMLWarning=B,Z.prettifyError=O}),g0=S((Z)=>{function Q(G,{flow:B,indicator:O,next:_,offset:Y,onError:U,parentIndent:H,startOnNewline:z}){let V=!1,X=z,$=z,J=\"\",W=\"\",K=!1,F=!1,j=null,R=null,q=null,I=null,L=null,A=null,D=null;for(let M of G){if(F){if(M.type!==\"space\"&&M.type!==\"newline\"&&M.type!==\"comma\")U(M.offset,\"MISSING_CHAR\",\"Tags and anchors must be separated from the next token by white space\");F=!1}if(j){if(X&&M.type!==\"comment\"&&M.type!==\"newline\")U(j,\"TAB_AS_INDENT\",\"Tabs are not allowed as indentation\");j=null}switch(M.type){case\"space\":if(!B&&(O!==\"doc-start\"||_?.type!==\"flow-collection\")&&M.source.includes(\"\\t\"))j=M;$=!0;break;case\"comment\":{if(!$)U(M,\"MISSING_CHAR\",\"Comments must be separated from other tokens by white space characters\");let C=M.source.substring(1)||\" \";if(!J)J=C;else J+=W+C;W=\"\",X=!1;break}case\"newline\":if(X){if(J)J+=M.source;else if(!A||O!==\"seq-item-ind\")V=!0}else W+=M.source;if(X=!0,K=!0,R||q)I=M;$=!0;break;case\"anchor\":if(R)U(M,\"MULTIPLE_ANCHORS\",\"A node can have at most one anchor\");if(M.source.endsWith(\":\"))U(M.offset+M.source.length-1,\"BAD_ALIAS\",\"Anchor ending in : is ambiguous\",!0);R=M,D??(D=M.offset),X=!1,$=!1,F=!0;break;case\"tag\":{if(q)U(M,\"MULTIPLE_TAGS\",\"A node can have at most one tag\");q=M,D??(D=M.offset),X=!1,$=!1,F=!0;break}case O:if(R||q)U(M,\"BAD_PROP_ORDER\",`Anchors and tags must be after the ${M.source} indicator`);if(A)U(M,\"UNEXPECTED_TOKEN\",`Unexpected ${M.source} in ${B??\"collection\"}`);A=M,X=O===\"seq-item-ind\"||O===\"explicit-key-ind\",$=!1;break;case\"comma\":if(B){if(L)U(M,\"UNEXPECTED_TOKEN\",`Unexpected , in ${B}`);L=M,X=!1,$=!1;break}default:U(M,\"UNEXPECTED_TOKEN\",`Unexpected ${M.type} token`),X=!1,$=!1}}let N=G[G.length-1],T=N?N.offset+N.source.length:Y;if(F&&_&&_.type!==\"space\"&&_.type!==\"newline\"&&_.type!==\"comma\"&&(_.type!==\"scalar\"||_.source!==\"\"))U(_.offset,\"MISSING_CHAR\",\"Tags and anchors must be separated from the next token by white space\");if(j&&(X&&j.indent<=H||_?.type===\"block-map\"||_?.type===\"block-seq\"))U(j,\"TAB_AS_INDENT\",\"Tabs are not allowed as indentation\");return{comma:L,found:A,spaceBefore:V,comment:J,hasNewline:K,anchor:R,tag:q,newlineAfterProp:I,end:T,start:D??T}}Z.resolveProps=Q}),JZ=S((Z)=>{function Q(G){if(!G)return null;switch(G.type){case\"alias\":case\"scalar\":case\"double-quoted-scalar\":case\"single-quoted-scalar\":if(G.source.includes(`\n`))return!0;if(G.end){for(let B of G.end)if(B.type===\"newline\")return!0}return!1;case\"flow-collection\":for(let B of G.items){for(let O of B.start)if(O.type===\"newline\")return!0;if(B.sep){for(let O of B.sep)if(O.type===\"newline\")return!0}if(Q(B.key)||Q(B.value))return!0}return!1;default:return!0}}Z.containsNewline=Q}),cZ=S((Z)=>{var Q=JZ();function G(B,O,_){if(O?.type===\"flow-collection\"){let Y=O.end[0];if(Y.indent===B&&(Y.source===\"]\"||Y.source===\"}\")&&Q.containsNewline(O))_(Y,\"BAD_INDENT\",\"Flow end indicator should be more indented than parent\",!0)}}Z.flowIndentCheck=G}),iZ=S((Z)=>{var Q=y();function G(B,O,_){let{uniqueKeys:Y}=B.options;if(Y===!1)return!1;let U=typeof Y===\"function\"?Y:(H,z)=>H===z||Q.isScalar(H)&&Q.isScalar(z)&&H.value===z.value;return O.some((H)=>U(H.key,_))}Z.mapIncludes=G}),t6=S((Z)=>{var Q=$0(),G=z0(),B=g0(),O=JZ(),_=cZ(),Y=iZ(),U=\"All mapping items must start at the same column\";function H({composeNode:z,composeEmptyNode:V},X,$,J,W){let F=new(W?.nodeClass??G.YAMLMap)(X.schema);if(X.atRoot)X.atRoot=!1;let j=$.offset,R=null;for(let q of $.items){let{start:I,key:L,sep:A,value:D}=q,N=B.resolveProps(I,{indicator:\"explicit-key-ind\",next:L??A?.[0],offset:j,onError:J,parentIndent:$.indent,startOnNewline:!0}),T=!N.found;if(T){if(L){if(L.type===\"block-seq\")J(j,\"BLOCK_AS_IMPLICIT_KEY\",\"A block sequence may not be used as an implicit map key\");else if(\"indent\"in L&&L.indent!==$.indent)J(j,\"BAD_INDENT\",U)}if(!N.anchor&&!N.tag&&!A){if(R=N.end,N.comment)if(F.comment)F.comment+=`\n`+N.comment;else F.comment=N.comment;continue}if(N.newlineAfterProp||O.containsNewline(L))J(L??I[I.length-1],\"MULTILINE_IMPLICIT_KEY\",\"Implicit keys need to be on a single line\")}else if(N.found?.indent!==$.indent)J(j,\"BAD_INDENT\",U);X.atKey=!0;let M=N.end,C=L?z(X,L,N,J):V(X,M,I,null,N,J);if(X.schema.compat)_.flowIndentCheck($.indent,L,J);if(X.atKey=!1,Y.mapIncludes(X,F.items,C))J(M,\"DUPLICATE_KEY\",\"Map keys must be unique\");let E=B.resolveProps(A??[],{indicator:\"map-value-ind\",next:D,offset:C.range[2],onError:J,parentIndent:$.indent,startOnNewline:!L||L.type===\"block-scalar\"});if(j=E.end,E.found){if(T){if(D?.type===\"block-map\"&&!E.hasNewline)J(j,\"BLOCK_AS_IMPLICIT_KEY\",\"Nested mappings are not allowed in compact mappings\");if(X.options.strict&&N.start<E.found.offset-1024)J(C.range,\"KEY_OVER_1024_CHARS\",\"The : indicator must be at most 1024 chars after the start of an implicit block mapping key\")}let k=D?z(X,D,E,J):V(X,j,A,null,E,J);if(X.schema.compat)_.flowIndentCheck($.indent,D,J);j=k.range[2];let g=new Q.Pair(C,k);if(X.options.keepSourceTokens)g.srcToken=q;F.items.push(g)}else{if(T)J(C.range,\"MISSING_CHAR\",\"Implicit map keys need to be followed by map values\");if(E.comment)if(C.comment)C.comment+=`\n`+E.comment;else C.comment=E.comment;let k=new Q.Pair(C);if(X.options.keepSourceTokens)k.srcToken=q;F.items.push(k)}}if(R&&R<j)J(R,\"IMPOSSIBLE\",\"Map comment with trailing content\");return F.range=[$.offset,j,R??j],F}Z.resolveBlockMap=H}),e6=S((Z)=>{var Q=Q0(),G=g0(),B=cZ();function O({composeNode:_,composeEmptyNode:Y},U,H,z,V){let $=new(V?.nodeClass??Q.YAMLSeq)(U.schema);if(U.atRoot)U.atRoot=!1;if(U.atKey)U.atKey=!1;let J=H.offset,W=null;for(let{start:K,value:F}of H.items){let j=G.resolveProps(K,{indicator:\"seq-item-ind\",next:F,offset:J,onError:z,parentIndent:H.indent,startOnNewline:!0});if(!j.found)if(j.anchor||j.tag||F)if(F?.type===\"block-seq\")z(j.end,\"BAD_INDENT\",\"All sequence items must start at the same column\");else z(J,\"MISSING_CHAR\",\"Sequence item without - indicator\");else{if(W=j.end,j.comment)$.comment=j.comment;continue}let R=F?_(U,F,j,z):Y(U,j.end,K,null,j,z);if(U.schema.compat)B.flowIndentCheck(H.indent,F,z);J=R.range[2],$.items.push(R)}return $.range=[H.offset,J,W??J],$}Z.resolveBlockSeq=O}),F0=S((Z)=>{function Q(G,B,O,_){let Y=\"\";if(G){let U=!1,H=\"\";for(let z of G){let{source:V,type:X}=z;switch(X){case\"space\":U=!0;break;case\"comment\":{if(O&&!U)_(z,\"MISSING_CHAR\",\"Comments must be separated from other tokens by white space characters\");let $=V.substring(1)||\" \";if(!Y)Y=$;else Y+=H+$;H=\"\";break}case\"newline\":if(Y)H+=V;U=!0;break;default:_(z,\"UNEXPECTED_TOKEN\",`Unexpected ${X} at node end`)}B+=V.length}}return{comment:Y,offset:B}}Z.resolveEnd=Q}),Z8=S((Z)=>{var Q=y(),G=$0(),B=z0(),O=Q0(),_=F0(),Y=g0(),U=JZ(),H=iZ(),z=\"Block collections are not allowed within flow collections\",V=($)=>$&&($.type===\"block-map\"||$.type===\"block-seq\");function X({composeNode:$,composeEmptyNode:J},W,K,F,j){let R=K.start.source===\"{\",q=R?\"flow map\":\"flow sequence\",L=new(j?.nodeClass??(R?B.YAMLMap:O.YAMLSeq))(W.schema);L.flow=!0;let A=W.atRoot;if(A)W.atRoot=!1;if(W.atKey)W.atKey=!1;let D=K.offset+K.start.source.length;for(let E=0;E<K.items.length;++E){let k=K.items[E],{start:g,key:x,sep:l,value:v}=k,P=Y.resolveProps(g,{flow:q,indicator:\"explicit-key-ind\",next:x??l?.[0],offset:D,onError:F,parentIndent:K.indent,startOnNewline:!1});if(!P.found){if(!P.anchor&&!P.tag&&!l&&!v){if(E===0&&P.comma)F(P.comma,\"UNEXPECTED_TOKEN\",`Unexpected , in ${q}`);else if(E<K.items.length-1)F(P.start,\"UNEXPECTED_TOKEN\",`Unexpected empty item in ${q}`);if(P.comment)if(L.comment)L.comment+=`\n`+P.comment;else L.comment=P.comment;D=P.end;continue}if(!R&&W.options.strict&&U.containsNewline(x))F(x,\"MULTILINE_IMPLICIT_KEY\",\"Implicit keys of flow sequence pairs need to be on a single line\")}if(E===0){if(P.comma)F(P.comma,\"UNEXPECTED_TOKEN\",`Unexpected , in ${q}`)}else{if(!P.comma)F(P.start,\"MISSING_CHAR\",`Missing , between ${q} items`);if(P.comment){let h=\"\";Z:for(let f of g)switch(f.type){case\"comma\":case\"space\":break;case\"comment\":h=f.source.substring(1);break Z;default:break Z}if(h){let f=L.items[L.items.length-1];if(Q.isPair(f))f=f.value??f.key;if(f.comment)f.comment+=`\n`+h;else f.comment=h;P.comment=P.comment.substring(h.length+1)}}}if(!R&&!l&&!P.found){let h=v?$(W,v,P,F):J(W,P.end,l,null,P,F);if(L.items.push(h),D=h.range[2],V(v))F(h.range,\"BLOCK_IN_FLOW\",z)}else{W.atKey=!0;let h=P.end,f=x?$(W,x,P,F):J(W,h,g,null,P,F);if(V(x))F(f.range,\"BLOCK_IN_FLOW\",z);W.atKey=!1;let m=Y.resolveProps(l??[],{flow:q,indicator:\"map-value-ind\",next:v,offset:f.range[2],onError:F,parentIndent:K.indent,startOnNewline:!1});if(m.found){if(!R&&!P.found&&W.options.strict){if(l)for(let c of l){if(c===m.found)break;if(c.type===\"newline\"){F(c,\"MULTILINE_IMPLICIT_KEY\",\"Implicit keys of flow sequence pairs need to be on a single line\");break}}if(P.start<m.found.offset-1024)F(m.found,\"KEY_OVER_1024_CHARS\",\"The : indicator must be at most 1024 chars after the start of an implicit flow sequence key\")}}else if(v)if(\"source\"in v&&v.source?.[0]===\":\")F(v,\"MISSING_CHAR\",`Missing space after : in ${q}`);else F(m.start,\"MISSING_CHAR\",`Missing , or : between ${q} items`);let G0=v?$(W,v,m,F):m.found?J(W,m.end,l,null,m,F):null;if(G0){if(V(v))F(G0.range,\"BLOCK_IN_FLOW\",z)}else if(m.comment)if(f.comment)f.comment+=`\n`+m.comment;else f.comment=m.comment;let c0=new G.Pair(f,G0);if(W.options.keepSourceTokens)c0.srcToken=k;if(R){let c=L;if(H.mapIncludes(W,c.items,f))F(h,\"DUPLICATE_KEY\",\"Map keys must be unique\");c.items.push(c0)}else{let c=new B.YAMLMap(W.schema);c.flow=!0,c.items.push(c0);let YZ=(G0??f).range;c.range=[f.range[0],YZ[1],YZ[2]],L.items.push(c)}D=G0?G0.range[2]:m.end}}let N=R?\"}\":\"]\",[T,...M]=K.end,C=D;if(T?.source===N)C=T.offset+T.source.length;else{let E=q[0].toUpperCase()+q.substring(1),k=A?`${E} must end with a ${N}`:`${E} in block collection must be sufficiently indented and end with a ${N}`;if(F(D,A?\"MISSING_CHAR\":\"BAD_INDENT\",k),T&&T.source.length!==1)M.unshift(T)}if(M.length>0){let E=_.resolveEnd(M,C,W.options.strict,F);if(E.comment)if(L.comment)L.comment+=`\n`+E.comment;else L.comment=E.comment;L.range=[K.offset,C,E.offset]}else L.range=[K.offset,C,C];return L}Z.resolveFlowCollection=X}),X8=S((Z)=>{var Q=y(),G=b(),B=z0(),O=Q0(),_=t6(),Y=e6(),U=Z8();function H(V,X,$,J,W,K){let F=$.type===\"block-map\"?_.resolveBlockMap(V,X,$,J,K):$.type===\"block-seq\"?Y.resolveBlockSeq(V,X,$,J,K):U.resolveFlowCollection(V,X,$,J,K),j=F.constructor;if(W===\"!\"||W===j.tagName)return F.tag=j.tagName,F;if(W)F.tag=W;return F}function z(V,X,$,J,W){let K=J.tag,F=!K?null:X.directives.tagName(K.source,(A)=>W(K,\"TAG_RESOLVE_FAILED\",A));if($.type===\"block-seq\"){let{anchor:A,newlineAfterProp:D}=J,N=A&&K?A.offset>K.offset?A:K:A??K;if(N&&(!D||D.offset<N.offset))W(N,\"MISSING_CHAR\",\"Missing newline after block sequence props\")}let j=$.type===\"block-map\"?\"map\":$.type===\"block-seq\"?\"seq\":$.start.source===\"{\"?\"map\":\"seq\";if(!K||!F||F===\"!\"||F===B.YAMLMap.tagName&&j===\"map\"||F===O.YAMLSeq.tagName&&j===\"seq\")return H(V,X,$,W,F);let R=X.schema.tags.find((A)=>A.tag===F&&A.collection===j);if(!R){let A=X.schema.knownTags[F];if(A?.collection===j)X.schema.tags.push(Object.assign({},A,{default:!1})),R=A;else{if(A)W(K,\"BAD_COLLECTION_TYPE\",`${A.tag} used for ${j} collection, but expects ${A.collection??\"scalar\"}`,!0);else W(K,\"TAG_RESOLVE_FAILED\",`Unresolved tag: ${F}`,!0);return H(V,X,$,W,F)}}let q=H(V,X,$,W,F,R),I=R.resolve?.(q,(A)=>W(K,\"TAG_RESOLVE_FAILED\",A),X.options)??q,L=Q.isNode(I)?I:new G.Scalar(I);if(L.range=q.range,L.tag=F,R?.format)L.format=R.format;return L}Z.composeCollection=z}),nZ=S((Z)=>{var Q=b();function G(_,Y,U){let H=Y.offset,z=B(Y,_.options.strict,U);if(!z)return{value:\"\",type:null,comment:\"\",range:[H,H,H]};let V=z.mode===\">\"?Q.Scalar.BLOCK_FOLDED:Q.Scalar.BLOCK_LITERAL,X=Y.source?O(Y.source):[],$=X.length;for(let I=X.length-1;I>=0;--I){let L=X[I][1];if(L===\"\"||L===\"\\r\")$=I;else break}if($===0){let I=z.chomp===\"+\"&&X.length>0?`\n`.repeat(Math.max(1,X.length-1)):\"\",L=H+z.length;if(Y.source)L+=Y.source.length;return{value:I,type:V,comment:z.comment,range:[H,L,L]}}let J=Y.indent+z.indent,W=Y.offset+z.length,K=0;for(let I=0;I<$;++I){let[L,A]=X[I];if(A===\"\"||A===\"\\r\"){if(z.indent===0&&L.length>J)J=L.length}else{if(L.length<J)U(W+L.length,\"MISSING_CHAR\",\"Block scalars with more-indented leading empty lines must use an explicit indentation indicator\");if(z.indent===0)J=L.length;if(K=I,J===0&&!_.atRoot)U(W,\"BAD_INDENT\",\"Block scalar values in collections must be indented\");break}W+=L.length+A.length+1}for(let I=X.length-1;I>=$;--I)if(X[I][0].length>J)$=I+1;let F=\"\",j=\"\",R=!1;for(let I=0;I<K;++I)F+=X[I][0].slice(J)+`\n`;for(let I=K;I<$;++I){let[L,A]=X[I];W+=L.length+A.length+1;let D=A[A.length-1]===\"\\r\";if(D)A=A.slice(0,-1);if(A&&L.length<J){let T=`Block scalar lines must not be less indented than their ${z.indent?\"explicit indentation indicator\":\"first line\"}`;U(W-A.length-(D?2:1),\"BAD_INDENT\",T),L=\"\"}if(V===Q.Scalar.BLOCK_LITERAL)F+=j+L.slice(J)+A,j=`\n`;else if(L.length>J||A[0]===\"\\t\"){if(j===\" \")j=`\n`;else if(!R&&j===`\n`)j=`\n\n`;F+=j+L.slice(J)+A,j=`\n`,R=!0}else if(A===\"\")if(j===`\n`)F+=`\n`;else j=`\n`;else F+=j+A,j=\" \",R=!1}switch(z.chomp){case\"-\":break;case\"+\":for(let I=$;I<X.length;++I)F+=`\n`+X[I][0].slice(J);if(F[F.length-1]!==`\n`)F+=`\n`;break;default:F+=`\n`}let q=H+z.length+Y.source.length;return{value:F,type:V,comment:z.comment,range:[H,q,q]}}function B({offset:_,props:Y},U,H){if(Y[0].type!==\"block-scalar-header\")return H(Y[0],\"IMPOSSIBLE\",\"Block scalar header not found\"),null;let{source:z}=Y[0],V=z[0],X=0,$=\"\",J=-1;for(let j=1;j<z.length;++j){let R=z[j];if(!$&&(R===\"-\"||R===\"+\"))$=R;else{let q=Number(R);if(!X&&q)X=q;else if(J===-1)J=_+j}}if(J!==-1)H(J,\"UNEXPECTED_TOKEN\",`Block scalar header includes extra characters: ${z}`);let W=!1,K=\"\",F=z.length;for(let j=1;j<Y.length;++j){let R=Y[j];switch(R.type){case\"space\":W=!0;case\"newline\":F+=R.source.length;break;case\"comment\":if(U&&!W)H(R,\"MISSING_CHAR\",\"Comments must be separated from other tokens by white space characters\");F+=R.source.length,K=R.source.substring(1);break;case\"error\":H(R,\"UNEXPECTED_TOKEN\",R.message),F+=R.source.length;break;default:{let q=`Unexpected token in block scalar header: ${R.type}`;H(R,\"UNEXPECTED_TOKEN\",q);let I=R.source;if(I&&typeof I===\"string\")F+=I.length}}}return{mode:V,indent:X,chomp:$,comment:K,length:F}}function O(_){let Y=_.split(/\\n( *)/),U=Y[0],H=U.match(/^( *)/),V=[H?.[1]?[H[1],U.slice(H[1].length)]:[\"\",U]];for(let X=1;X<Y.length;X+=2)V.push([Y[X],Y[X+1]]);return V}Z.resolveBlockScalar=G}),sZ=S((Z)=>{var Q=b(),G=F0();function B(X,$,J){let{offset:W,type:K,source:F,end:j}=X,R,q,I=(D,N,T)=>J(W+D,N,T);switch(K){case\"scalar\":R=Q.Scalar.PLAIN,q=O(F,I);break;case\"single-quoted-scalar\":R=Q.Scalar.QUOTE_SINGLE,q=_(F,I);break;case\"double-quoted-scalar\":R=Q.Scalar.QUOTE_DOUBLE,q=U(F,I);break;default:return J(X,\"UNEXPECTED_TOKEN\",`Expected a flow scalar value, but found: ${K}`),{value:\"\",type:null,comment:\"\",range:[W,W+F.length,W+F.length]}}let L=W+F.length,A=G.resolveEnd(j,L,$,J);return{value:q,type:R,comment:A.comment,range:[W,L,A.offset]}}function O(X,$){let J=\"\";switch(X[0]){case\"\\t\":J=\"a tab character\";break;case\",\":J=\"flow indicator character ,\";break;case\"%\":J=\"directive indicator character %\";break;case\"|\":case\">\":{J=`block scalar indicator ${X[0]}`;break}case\"@\":case\"`\":{J=`reserved character ${X[0]}`;break}}if(J)$(0,\"BAD_SCALAR_START\",`Plain value cannot start with ${J}`);return Y(X)}function _(X,$){if(X[X.length-1]!==\"'\"||X.length===1)$(X.length,\"MISSING_CHAR\",\"Missing closing 'quote\");return Y(X.slice(1,-1)).replace(/''/g,\"'\")}function Y(X){let $,J;try{$=new RegExp(`(.*?)(?<![ \t])[ \t]*\\r?\n`,\"sy\"),J=new RegExp(`[ \t]*(.*?)(?:(?<![ \t])[ \t]*)?\\r?\n`,\"sy\")}catch{$=/(.*?)[ \\t]*\\r?\\n/sy,J=/[ \\t]*(.*?)[ \\t]*\\r?\\n/sy}let W=$.exec(X);if(!W)return X;let K=W[1],F=\" \",j=$.lastIndex;J.lastIndex=j;while(W=J.exec(X)){if(W[1]===\"\")if(F===`\n`)K+=F;else F=`\n`;else K+=F+W[1],F=\" \";j=J.lastIndex}let R=/[ \\t]*(.*)/sy;return R.lastIndex=j,W=R.exec(X),K+F+(W?.[1]??\"\")}function U(X,$){let J=\"\";for(let W=1;W<X.length-1;++W){let K=X[W];if(K===\"\\r\"&&X[W+1]===`\n`)continue;if(K===`\n`){let{fold:F,offset:j}=H(X,W);J+=F,W=j}else if(K===\"\\\\\"){let F=X[++W],j=z[F];if(j)J+=j;else if(F===`\n`){F=X[W+1];while(F===\" \"||F===\"\\t\")F=X[++W+1]}else if(F===\"\\r\"&&X[W+1]===`\n`){F=X[++W+1];while(F===\" \"||F===\"\\t\")F=X[++W+1]}else if(F===\"x\"||F===\"u\"||F===\"U\"){let R={x:2,u:4,U:8}[F];J+=V(X,W+1,R,$),W+=R}else{let R=X.substr(W-1,2);$(W-1,\"BAD_DQ_ESCAPE\",`Invalid escape sequence ${R}`),J+=R}}else if(K===\" \"||K===\"\\t\"){let F=W,j=X[W+1];while(j===\" \"||j===\"\\t\")j=X[++W+1];if(j!==`\n`&&!(j===\"\\r\"&&X[W+2]===`\n`))J+=W>F?X.slice(F,W+1):K}else J+=K}if(X[X.length-1]!=='\"'||X.length===1)$(X.length,\"MISSING_CHAR\",'Missing closing \"quote');return J}function H(X,$){let J=\"\",W=X[$+1];while(W===\" \"||W===\"\\t\"||W===`\n`||W===\"\\r\"){if(W===\"\\r\"&&X[$+2]!==`\n`)break;if(W===`\n`)J+=`\n`;$+=1,W=X[$+1]}if(!J)J=\" \";return{fold:J,offset:$}}var z={\"0\":\"\\x00\",a:\"\\x07\",b:\"\\b\",e:\"\\x1B\",f:\"\\f\",n:`\n`,r:\"\\r\",t:\"\\t\",v:\"\\v\",N:\"\u0085\",_:\"\u00A0\",L:\"\\u2028\",P:\"\\u2029\",\" \":\" \",'\"':'\"',\"/\":\"/\",\"\\\\\":\"\\\\\",\"\\t\":\"\\t\"};function V(X,$,J,W){let K=X.substr($,J),j=K.length===J&&/^[0-9a-fA-F]+$/.test(K)?parseInt(K,16):NaN;if(isNaN(j)){let R=X.substr($-2,J+2);return W($-2,\"BAD_DQ_ESCAPE\",`Invalid escape sequence ${R}`),R}return String.fromCodePoint(j)}Z.resolveFlowScalar=B}),$8=S((Z)=>{var Q=y(),G=b(),B=nZ(),O=sZ();function _(H,z,V,X){let{value:$,type:J,comment:W,range:K}=z.type===\"block-scalar\"?B.resolveBlockScalar(H,z,X):O.resolveFlowScalar(z,H.options.strict,X),F=V?H.directives.tagName(V.source,(q)=>X(V,\"TAG_RESOLVE_FAILED\",q)):null,j;if(H.options.stringKeys&&H.atKey)j=H.schema[Q.SCALAR];else if(F)j=Y(H.schema,$,F,V,X);else if(z.type===\"scalar\")j=U(H,$,z,X);else j=H.schema[Q.SCALAR];let R;try{let q=j.resolve($,(I)=>X(V??z,\"TAG_RESOLVE_FAILED\",I),H.options);R=Q.isScalar(q)?q:new G.Scalar(q)}catch(q){let I=q instanceof Error?q.message:String(q);X(V??z,\"TAG_RESOLVE_FAILED\",I),R=new G.Scalar($)}if(R.range=K,R.source=$,J)R.type=J;if(F)R.tag=F;if(j.format)R.format=j.format;if(W)R.comment=W;return R}function Y(H,z,V,X,$){if(V===\"!\")return H[Q.SCALAR];let J=[];for(let K of H.tags)if(!K.collection&&K.tag===V)if(K.default&&K.test)J.push(K);else return K;for(let K of J)if(K.test?.test(z))return K;let W=H.knownTags[V];if(W&&!W.collection)return H.tags.push(Object.assign({},W,{default:!1,test:void 0})),W;return $(X,\"TAG_RESOLVE_FAILED\",`Unresolved tag: ${V}`,V!==\"tag:yaml.org,2002:str\"),H[Q.SCALAR]}function U({atKey:H,directives:z,schema:V},X,$,J){let W=V.tags.find((K)=>(K.default===!0||H&&K.default===\"key\")&&K.test?.test(X))||V[Q.SCALAR];if(V.compat){let K=V.compat.find((F)=>F.default&&F.test?.test(X))??V[Q.SCALAR];if(W.tag!==K.tag){let F=z.tagString(W.tag),j=z.tagString(K.tag),R=`Value may be parsed as either ${F} or ${j}`;J($,\"TAG_RESOLVE_FAILED\",R,!0)}}return W}Z.composeScalar=_}),z8=S((Z)=>{function Q(G,B,O){if(B){O??(O=B.length);for(let _=O-1;_>=0;--_){let Y=B[_];switch(Y.type){case\"space\":case\"comment\":case\"newline\":G-=Y.source.length;continue}Y=B[++_];while(Y?.type===\"space\")G+=Y.source.length,Y=B[++_];break}}return G}Z.emptyScalarPosition=Q}),Q8=S((Z)=>{var Q=C0(),G=y(),B=X8(),O=$8(),_=F0(),Y=z8(),U={composeNode:H,composeEmptyNode:z};function H(X,$,J,W){let K=X.atKey,{spaceBefore:F,comment:j,anchor:R,tag:q}=J,I,L=!0;switch($.type){case\"alias\":if(I=V(X,$,W),R||q)W($,\"ALIAS_PROPS\",\"An alias node must not specify any properties\");break;case\"scalar\":case\"single-quoted-scalar\":case\"double-quoted-scalar\":case\"block-scalar\":if(I=O.composeScalar(X,$,q,W),R)I.anchor=R.source.substring(1);break;case\"block-map\":case\"block-seq\":case\"flow-collection\":try{if(I=B.composeCollection(U,X,$,J,W),R)I.anchor=R.source.substring(1)}catch(A){let D=A instanceof Error?A.message:String(A);W($,\"RESOURCE_EXHAUSTION\",D)}break;default:{let A=$.type===\"error\"?$.message:`Unsupported token (type: ${$.type})`;W($,\"UNEXPECTED_TOKEN\",A),L=!1}}if(I??(I=z(X,$.offset,void 0,null,J,W)),R&&I.anchor===\"\")W(R,\"BAD_ALIAS\",\"Anchor cannot be an empty string\");if(K&&X.options.stringKeys&&(!G.isScalar(I)||typeof I.value!==\"string\"||I.tag&&I.tag!==\"tag:yaml.org,2002:str\"))W(q??$,\"NON_STRING_KEY\",\"With stringKeys, all keys must be strings\");if(F)I.spaceBefore=!0;if(j)if($.type===\"scalar\"&&$.source===\"\")I.comment=j;else I.commentBefore=j;if(X.options.keepSourceTokens&&L)I.srcToken=$;return I}function z(X,$,J,W,{spaceBefore:K,comment:F,anchor:j,tag:R,end:q},I){let L={type:\"scalar\",offset:Y.emptyScalarPosition($,J,W),indent:-1,source:\"\"},A=O.composeScalar(X,L,R,I);if(j){if(A.anchor=j.source.substring(1),A.anchor===\"\")I(j,\"BAD_ALIAS\",\"Anchor cannot be an empty string\")}if(K)A.spaceBefore=!0;if(F)A.comment=F,A.range[2]=q;return A}function V({options:X},{offset:$,source:J,end:W},K){let F=new Q.Alias(J.substring(1));if(F.source===\"\")K($,\"BAD_ALIAS\",\"Alias cannot be an empty string\");if(F.source.endsWith(\":\"))K($+J.length-1,\"BAD_ALIAS\",\"Alias ending in : is ambiguous\",!0);let j=$+J.length,R=_.resolveEnd(W,j,X.strict,K);if(F.range=[$,j,R.offset],R.comment)F.comment=R.comment;return F}Z.composeEmptyNode=z,Z.composeNode=H}),J8=S((Z)=>{var Q=f0(),G=Q8(),B=F0(),O=g0();function _(Y,U,{offset:H,start:z,value:V,end:X},$){let J=Object.assign({_directives:U},Y),W=new Q.Document(void 0,J),K={atKey:!1,atRoot:!0,directives:W.directives,options:W.options,schema:W.schema},F=O.resolveProps(z,{indicator:\"doc-start\",next:V??X?.[0],offset:H,onError:$,parentIndent:0,startOnNewline:!0});if(F.found){if(W.directives.docStart=!0,V&&(V.type===\"block-map\"||V.type===\"block-seq\")&&!F.hasNewline)$(F.end,\"MISSING_CHAR\",\"Block collection cannot start on same line with directives-end marker\")}W.contents=V?G.composeNode(K,V,F,$):G.composeEmptyNode(K,F.end,z,null,F,$);let j=W.contents.range[2],R=B.resolveEnd(X,j,!1,$);if(R.comment)W.comment=R.comment;return W.range=[H,j,R.offset],W}Z.composeDoc=_}),aZ=S((Z)=>{var Q=T0(\"process\"),G=yZ(),B=f0(),O=x0(),_=y(),Y=J8(),U=F0();function H(X){if(typeof X===\"number\")return[X,X+1];if(Array.isArray(X))return X.length===2?X:[X[0],X[1]];let{offset:$,source:J}=X;return[$,$+(typeof J===\"string\"?J.length:1)]}function z(X){let $=\"\",J=!1,W=!1;for(let K=0;K<X.length;++K){let F=X[K];switch(F[0]){case\"#\":$+=($===\"\"?\"\":W?`\n\n`:`\n`)+(F.substring(1)||\" \"),J=!0,W=!1;break;case\"%\":if(X[K+1]?.[0]!==\"#\")K+=1;J=!1;break;default:if(!J)W=!0;J=!1}}return{comment:$,afterEmptyLine:W}}class V{constructor(X={}){this.doc=null,this.atDirectives=!1,this.prelude=[],this.errors=[],this.warnings=[],this.onError=($,J,W,K)=>{let F=H($);if(K)this.warnings.push(new O.YAMLWarning(F,J,W));else this.errors.push(new O.YAMLParseError(F,J,W))},this.directives=new G.Directives({version:X.version||\"1.2\"}),this.options=X}decorate(X,$){let{comment:J,afterEmptyLine:W}=z(this.prelude);if(J){let K=X.contents;if($)X.comment=X.comment?`${X.comment}\n${J}`:J;else if(W||X.directives.docStart||!K)X.commentBefore=J;else if(_.isCollection(K)&&!K.flow&&K.items.length>0){let F=K.items[0];if(_.isPair(F))F=F.key;let j=F.commentBefore;F.commentBefore=j?`${J}\n${j}`:J}else{let F=K.commentBefore;K.commentBefore=F?`${J}\n${F}`:J}}if($)Array.prototype.push.apply(X.errors,this.errors),Array.prototype.push.apply(X.warnings,this.warnings);else X.errors=this.errors,X.warnings=this.warnings;this.prelude=[],this.errors=[],this.warnings=[]}streamInfo(){return{comment:z(this.prelude).comment,directives:this.directives,errors:this.errors,warnings:this.warnings}}*compose(X,$=!1,J=-1){for(let W of X)yield*this.next(W);yield*this.end($,J)}*next(X){if(Q.env.LOG_STREAM)console.dir(X,{depth:null});switch(X.type){case\"directive\":this.directives.add(X.source,($,J,W)=>{let K=H(X);K[0]+=$,this.onError(K,\"BAD_DIRECTIVE\",J,W)}),this.prelude.push(X.source),this.atDirectives=!0;break;case\"document\":{let $=Y.composeDoc(this.options,this.directives,X,this.onError);if(this.atDirectives&&!$.directives.docStart)this.onError(X,\"MISSING_CHAR\",\"Missing directives-end/doc-start indicator line\");if(this.decorate($,!1),this.doc)yield this.doc;this.doc=$,this.atDirectives=!1;break}case\"byte-order-mark\":case\"space\":break;case\"comment\":case\"newline\":this.prelude.push(X.source);break;case\"error\":{let $=X.source?`${X.message}: ${JSON.stringify(X.source)}`:X.message,J=new O.YAMLParseError(H(X),\"UNEXPECTED_TOKEN\",$);if(this.atDirectives||!this.doc)this.errors.push(J);else this.doc.errors.push(J);break}case\"doc-end\":{if(!this.doc){this.errors.push(new O.YAMLParseError(H(X),\"UNEXPECTED_TOKEN\",\"Unexpected doc-end without preceding document\"));break}this.doc.directives.docEnd=!0;let $=U.resolveEnd(X.end,X.offset+X.source.length,this.doc.options.strict,this.onError);if(this.decorate(this.doc,!0),$.comment){let J=this.doc.comment;this.doc.comment=J?`${J}\n${$.comment}`:$.comment}this.doc.range[2]=$.offset;break}default:this.errors.push(new O.YAMLParseError(H(X),\"UNEXPECTED_TOKEN\",`Unsupported token ${X.type}`))}}*end(X=!1,$=-1){if(this.doc)this.decorate(this.doc,!0),yield this.doc,this.doc=null;else if(X){let J=Object.assign({_directives:this.directives},this.options),W=new B.Document(void 0,J);if(this.atDirectives)this.onError($,\"MISSING_CHAR\",\"Missing directives-end indicator line\");W.range=[0,$,$],this.decorate(W,!1),yield W}}}Z.Composer=V}),G8=S((Z)=>{var Q=nZ(),G=sZ(),B=x0(),O=w0();function _(X,$=!0,J){if(X){let W=(K,F,j)=>{let R=typeof K===\"number\"?K:Array.isArray(K)?K[0]:K.offset;if(J)J(R,F,j);else throw new B.YAMLParseError([R,R+1],F,j)};switch(X.type){case\"scalar\":case\"single-quoted-scalar\":case\"double-quoted-scalar\":return G.resolveFlowScalar(X,$,W);case\"block-scalar\":return Q.resolveBlockScalar({options:{strict:$}},X,W)}}return null}function Y(X,$){let{implicitKey:J=!1,indent:W,inFlow:K=!1,offset:F=-1,type:j=\"PLAIN\"}=$,R=O.stringifyString({type:j,value:X},{implicitKey:J,indent:W>0?\" \".repeat(W):\"\",inFlow:K,options:{blockQuote:!0,lineWidth:-1}}),q=$.end??[{type:\"newline\",offset:-1,indent:W,source:`\n`}];switch(R[0]){case\"|\":case\">\":{let I=R.indexOf(`\n`),L=R.substring(0,I),A=R.substring(I+1)+`\n`,D=[{type:\"block-scalar-header\",offset:F,indent:W,source:L}];if(!z(D,q))D.push({type:\"newline\",offset:-1,indent:W,source:`\n`});return{type:\"block-scalar\",offset:F,indent:W,props:D,source:A}}case'\"':return{type:\"double-quoted-scalar\",offset:F,indent:W,source:R,end:q};case\"'\":return{type:\"single-quoted-scalar\",offset:F,indent:W,source:R,end:q};default:return{type:\"scalar\",offset:F,indent:W,source:R,end:q}}}function U(X,$,J={}){let{afterKey:W=!1,implicitKey:K=!1,inFlow:F=!1,type:j}=J,R=\"indent\"in X?X.indent:null;if(W&&typeof R===\"number\")R+=2;if(!j)switch(X.type){case\"single-quoted-scalar\":j=\"QUOTE_SINGLE\";break;case\"double-quoted-scalar\":j=\"QUOTE_DOUBLE\";break;case\"block-scalar\":{let I=X.props[0];if(I.type!==\"block-scalar-header\")throw Error(\"Invalid block scalar header\");j=I.source[0]===\">\"?\"BLOCK_FOLDED\":\"BLOCK_LITERAL\";break}default:j=\"PLAIN\"}let q=O.stringifyString({type:j,value:$},{implicitKey:K||R===null,indent:R!==null&&R>0?\" \".repeat(R):\"\",inFlow:F,options:{blockQuote:!0,lineWidth:-1}});switch(q[0]){case\"|\":case\">\":H(X,q);break;case'\"':V(X,q,\"double-quoted-scalar\");break;case\"'\":V(X,q,\"single-quoted-scalar\");break;default:V(X,q,\"scalar\")}}function H(X,$){let J=$.indexOf(`\n`),W=$.substring(0,J),K=$.substring(J+1)+`\n`;if(X.type===\"block-scalar\"){let F=X.props[0];if(F.type!==\"block-scalar-header\")throw Error(\"Invalid block scalar header\");F.source=W,X.source=K}else{let{offset:F}=X,j=\"indent\"in X?X.indent:-1,R=[{type:\"block-scalar-header\",offset:F,indent:j,source:W}];if(!z(R,\"end\"in X?X.end:void 0))R.push({type:\"newline\",offset:-1,indent:j,source:`\n`});for(let q of Object.keys(X))if(q!==\"type\"&&q!==\"offset\")delete X[q];Object.assign(X,{type:\"block-scalar\",indent:j,props:R,source:K})}}function z(X,$){if($)for(let J of $)switch(J.type){case\"space\":case\"comment\":X.push(J);break;case\"newline\":return X.push(J),!0}return!1}function V(X,$,J){switch(X.type){case\"scalar\":case\"double-quoted-scalar\":case\"single-quoted-scalar\":X.type=J,X.source=$;break;case\"block-scalar\":{let W=X.props.slice(1),K=$.length;if(X.props[0].type===\"block-scalar-header\")K-=X.props[0].source.length;for(let F of W)F.offset+=K;delete X.props,Object.assign(X,{type:J,source:$,end:W});break}case\"block-map\":case\"block-seq\":{let K={type:\"newline\",offset:X.offset+$.length,indent:X.indent,source:`\n`};delete X.items,Object.assign(X,{type:J,source:$,end:[K]});break}default:{let W=\"indent\"in X?X.indent:-1,K=\"end\"in X&&Array.isArray(X.end)?X.end.filter((F)=>F.type===\"space\"||F.type===\"comment\"||F.type===\"newline\"):[];for(let F of Object.keys(X))if(F!==\"type\"&&F!==\"offset\")delete X[F];Object.assign(X,{type:J,indent:W,source:$,end:K})}}}Z.createScalarToken=Y,Z.resolveAsScalar=_,Z.setScalarValue=U}),W8=S((Z)=>{var Q=(O)=>(\"type\"in O)?G(O):B(O);function G(O){switch(O.type){case\"block-scalar\":{let _=\"\";for(let Y of O.props)_+=G(Y);return _+O.source}case\"block-map\":case\"block-seq\":{let _=\"\";for(let Y of O.items)_+=B(Y);return _}case\"flow-collection\":{let _=O.start.source;for(let Y of O.items)_+=B(Y);for(let Y of O.end)_+=Y.source;return _}case\"document\":{let _=B(O);if(O.end)for(let Y of O.end)_+=Y.source;return _}default:{let _=O.source;if(\"end\"in O&&O.end)for(let Y of O.end)_+=Y.source;return _}}}function B({start:O,key:_,sep:Y,value:U}){let H=\"\";for(let z of O)H+=z.source;if(_)H+=G(_);if(Y)for(let z of Y)H+=z.source;if(U)H+=G(U);return H}Z.stringify=Q}),V8=S((Z)=>{var Q=Symbol(\"break visit\"),G=Symbol(\"skip children\"),B=Symbol(\"remove item\");function O(Y,U){if(\"type\"in Y&&Y.type===\"document\")Y={start:Y.start,value:Y.value};_(Object.freeze([]),Y,U)}O.BREAK=Q,O.SKIP=G,O.REMOVE=B,O.itemAtPath=(Y,U)=>{let H=Y;for(let[z,V]of U){let X=H?.[z];if(X&&\"items\"in X)H=X.items[V];else return}return H},O.parentCollection=(Y,U)=>{let H=O.itemAtPath(Y,U.slice(0,-1)),z=U[U.length-1][0],V=H?.[z];if(V&&\"items\"in V)return V;throw Error(\"Parent collection not found\")};function _(Y,U,H){let z=H(U,Y);if(typeof z===\"symbol\")return z;for(let V of[\"key\",\"value\"]){let X=U[V];if(X&&\"items\"in X){for(let $=0;$<X.items.length;++$){let J=_(Object.freeze(Y.concat([[V,$]])),X.items[$],H);if(typeof J===\"number\")$=J-1;else if(J===Q)return Q;else if(J===B)X.items.splice($,1),$-=1}if(typeof z===\"function\"&&V===\"key\")z=z(U,Y)}}return typeof z===\"function\"?z(U,Y):z}Z.visit=O}),GZ=S((Z)=>{var Q=G8(),G=W8(),B=V8(),O=\"\\uFEFF\",_=\"\\x02\",Y=\"\\x18\",U=\"\\x1F\",H=($)=>!!$&&(\"items\"in $),z=($)=>!!$&&($.type===\"scalar\"||$.type===\"single-quoted-scalar\"||$.type===\"double-quoted-scalar\"||$.type===\"block-scalar\");function V($){switch($){case O:return\"<BOM>\";case _:return\"<DOC>\";case Y:return\"<FLOW_END>\";case U:return\"<SCALAR>\";default:return JSON.stringify($)}}function X($){switch($){case O:return\"byte-order-mark\";case _:return\"doc-mode\";case Y:return\"flow-error-end\";case U:return\"scalar\";case\"---\":return\"doc-start\";case\"...\":return\"doc-end\";case\"\":case`\n`:case`\\r\n`:return\"newline\";case\"-\":return\"seq-item-ind\";case\"?\":return\"explicit-key-ind\";case\":\":return\"map-value-ind\";case\"{\":return\"flow-map-start\";case\"}\":return\"flow-map-end\";case\"[\":return\"flow-seq-start\";case\"]\":return\"flow-seq-end\";case\",\":return\"comma\"}switch($[0]){case\" \":case\"\\t\":return\"space\";case\"#\":return\"comment\";case\"%\":return\"directive-line\";case\"*\":return\"alias\";case\"&\":return\"anchor\";case\"!\":return\"tag\";case\"'\":return\"single-quoted-scalar\";case'\"':return\"double-quoted-scalar\";case\"|\":case\">\":return\"block-scalar-header\"}return null}Z.createScalarToken=Q.createScalarToken,Z.resolveAsScalar=Q.resolveAsScalar,Z.setScalarValue=Q.setScalarValue,Z.stringify=G.stringify,Z.visit=B.visit,Z.BOM=O,Z.DOCUMENT=_,Z.FLOW_END=Y,Z.SCALAR=U,Z.isCollection=H,Z.isScalar=z,Z.prettyToken=V,Z.tokenType=X}),rZ=S((Z)=>{var Q=GZ();function G(z){switch(z){case void 0:case\" \":case`\n`:case\"\\r\":case\"\\t\":return!0;default:return!1}}var B=new Set(\"0123456789ABCDEFabcdef\"),O=new Set(\"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()\"),_=new Set(\",[]{}\"),Y=new Set(` ,[]{}\n\\r\t`),U=(z)=>!z||Y.has(z);class H{constructor(){this.atEnd=!1,this.blockScalarIndent=-1,this.blockScalarKeep=!1,this.buffer=\"\",this.flowKey=!1,this.flowLevel=0,this.indentNext=0,this.indentValue=0,this.lineEndPos=null,this.next=null,this.pos=0}*lex(z,V=!1){if(z){if(typeof z!==\"string\")throw TypeError(\"source is not a string\");this.buffer=this.buffer?this.buffer+z:z,this.lineEndPos=null}this.atEnd=!V;let X=this.next??\"stream\";while(X&&(V||this.hasChars(1)))X=yield*this.parseNext(X)}atLineEnd(){let z=this.pos,V=this.buffer[z];while(V===\" \"||V===\"\\t\")V=this.buffer[++z];if(!V||V===\"#\"||V===`\n`)return!0;if(V===\"\\r\")return this.buffer[z+1]===`\n`;return!1}charAt(z){return this.buffer[this.pos+z]}continueScalar(z){let V=this.buffer[z];if(this.indentNext>0){let X=0;while(V===\" \")V=this.buffer[++X+z];if(V===\"\\r\"){let $=this.buffer[X+z+1];if($===`\n`||!$&&!this.atEnd)return z+X+1}return V===`\n`||X>=this.indentNext||!V&&!this.atEnd?z+X:-1}if(V===\"-\"||V===\".\"){let X=this.buffer.substr(z,3);if((X===\"---\"||X===\"...\")&&G(this.buffer[z+3]))return-1}return z}getLine(){let z=this.lineEndPos;if(typeof z!==\"number\"||z!==-1&&z<this.pos)z=this.buffer.indexOf(`\n`,this.pos),this.lineEndPos=z;if(z===-1)return this.atEnd?this.buffer.substring(this.pos):null;if(this.buffer[z-1]===\"\\r\")z-=1;return this.buffer.substring(this.pos,z)}hasChars(z){return this.pos+z<=this.buffer.length}setNext(z){return this.buffer=this.buffer.substring(this.pos),this.pos=0,this.lineEndPos=null,this.next=z,null}peek(z){return this.buffer.substr(this.pos,z)}*parseNext(z){switch(z){case\"stream\":return yield*this.parseStream();case\"line-start\":return yield*this.parseLineStart();case\"block-start\":return yield*this.parseBlockStart();case\"doc\":return yield*this.parseDocument();case\"flow\":return yield*this.parseFlowCollection();case\"quoted-scalar\":return yield*this.parseQuotedScalar();case\"block-scalar\":return yield*this.parseBlockScalar();case\"plain-scalar\":return yield*this.parsePlainScalar()}}*parseStream(){let z=this.getLine();if(z===null)return this.setNext(\"stream\");if(z[0]===Q.BOM)yield*this.pushCount(1),z=z.substring(1);if(z[0]===\"%\"){let V=z.length,X=z.indexOf(\"#\");while(X!==-1){let J=z[X-1];if(J===\" \"||J===\"\\t\"){V=X-1;break}else X=z.indexOf(\"#\",X+1)}while(!0){let J=z[V-1];if(J===\" \"||J===\"\\t\")V-=1;else break}let $=(yield*this.pushCount(V))+(yield*this.pushSpaces(!0));return yield*this.pushCount(z.length-$),this.pushNewline(),\"stream\"}if(this.atLineEnd()){let V=yield*this.pushSpaces(!0);return yield*this.pushCount(z.length-V),yield*this.pushNewline(),\"stream\"}return yield Q.DOCUMENT,yield*this.parseLineStart()}*parseLineStart(){let z=this.charAt(0);if(!z&&!this.atEnd)return this.setNext(\"line-start\");if(z===\"-\"||z===\".\"){if(!this.atEnd&&!this.hasChars(4))return this.setNext(\"line-start\");let V=this.peek(3);if((V===\"---\"||V===\"...\")&&G(this.charAt(3)))return yield*this.pushCount(3),this.indentValue=0,this.indentNext=0,V===\"---\"?\"doc\":\"stream\"}if(this.indentValue=yield*this.pushSpaces(!1),this.indentNext>this.indentValue&&!G(this.charAt(1)))this.indentNext=this.indentValue;return yield*this.parseBlockStart()}*parseBlockStart(){let[z,V]=this.peek(2);if(!V&&!this.atEnd)return this.setNext(\"block-start\");if((z===\"-\"||z===\"?\"||z===\":\")&&G(V)){let X=(yield*this.pushCount(1))+(yield*this.pushSpaces(!0));return this.indentNext=this.indentValue+1,this.indentValue+=X,yield*this.parseBlockStart()}return\"doc\"}*parseDocument(){yield*this.pushSpaces(!0);let z=this.getLine();if(z===null)return this.setNext(\"doc\");let V=yield*this.pushIndicators();switch(z[V]){case\"#\":yield*this.pushCount(z.length-V);case void 0:return yield*this.pushNewline(),yield*this.parseLineStart();case\"{\":case\"[\":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel=1,\"flow\";case\"}\":case\"]\":return yield*this.pushCount(1),\"doc\";case\"*\":return yield*this.pushUntil(U),\"doc\";case'\"':case\"'\":return yield*this.parseQuotedScalar();case\"|\":case\">\":return V+=yield*this.parseBlockScalarHeader(),V+=yield*this.pushSpaces(!0),yield*this.pushCount(z.length-V),yield*this.pushNewline(),yield*this.parseBlockScalar();default:return yield*this.parsePlainScalar()}}*parseFlowCollection(){let z,V,X=-1;do{if(z=yield*this.pushNewline(),z>0)V=yield*this.pushSpaces(!1),this.indentValue=X=V;else V=0;V+=yield*this.pushSpaces(!0)}while(z+V>0);let $=this.getLine();if($===null)return this.setNext(\"flow\");if(X!==-1&&X<this.indentNext&&$[0]!==\"#\"||X===0&&($.startsWith(\"---\")||$.startsWith(\"...\"))&&G($[3])){if(!(X===this.indentNext-1&&this.flowLevel===1&&($[0]===\"]\"||$[0]===\"}\")))return this.flowLevel=0,yield Q.FLOW_END,yield*this.parseLineStart()}let J=0;while($[J]===\",\")J+=yield*this.pushCount(1),J+=yield*this.pushSpaces(!0),this.flowKey=!1;switch(J+=yield*this.pushIndicators(),$[J]){case void 0:return\"flow\";case\"#\":return yield*this.pushCount($.length-J),\"flow\";case\"{\":case\"[\":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel+=1,\"flow\";case\"}\":case\"]\":return yield*this.pushCount(1),this.flowKey=!0,this.flowLevel-=1,this.flowLevel?\"flow\":\"doc\";case\"*\":return yield*this.pushUntil(U),\"flow\";case'\"':case\"'\":return this.flowKey=!0,yield*this.parseQuotedScalar();case\":\":{let W=this.charAt(1);if(this.flowKey||G(W)||W===\",\")return this.flowKey=!1,yield*this.pushCount(1),yield*this.pushSpaces(!0),\"flow\"}default:return this.flowKey=!1,yield*this.parsePlainScalar()}}*parseQuotedScalar(){let z=this.charAt(0),V=this.buffer.indexOf(z,this.pos+1);if(z===\"'\")while(V!==-1&&this.buffer[V+1]===\"'\")V=this.buffer.indexOf(\"'\",V+2);else while(V!==-1){let J=0;while(this.buffer[V-1-J]===\"\\\\\")J+=1;if(J%2===0)break;V=this.buffer.indexOf('\"',V+1)}let X=this.buffer.substring(0,V),$=X.indexOf(`\n`,this.pos);if($!==-1){while($!==-1){let J=this.continueScalar($+1);if(J===-1)break;$=X.indexOf(`\n`,J)}if($!==-1)V=$-(X[$-1]===\"\\r\"?2:1)}if(V===-1){if(!this.atEnd)return this.setNext(\"quoted-scalar\");V=this.buffer.length}return yield*this.pushToIndex(V+1,!1),this.flowLevel?\"flow\":\"doc\"}*parseBlockScalarHeader(){this.blockScalarIndent=-1,this.blockScalarKeep=!1;let z=this.pos;while(!0){let V=this.buffer[++z];if(V===\"+\")this.blockScalarKeep=!0;else if(V>\"0\"&&V<=\"9\")this.blockScalarIndent=Number(V)-1;else if(V!==\"-\")break}return yield*this.pushUntil((V)=>G(V)||V===\"#\")}*parseBlockScalar(){let z=this.pos-1,V=0,X;Z:for(let J=this.pos;X=this.buffer[J];++J)switch(X){case\" \":V+=1;break;case`\n`:z=J,V=0;break;case\"\\r\":{let W=this.buffer[J+1];if(!W&&!this.atEnd)return this.setNext(\"block-scalar\");if(W===`\n`)break}default:break Z}if(!X&&!this.atEnd)return this.setNext(\"block-scalar\");if(V>=this.indentNext){if(this.blockScalarIndent===-1)this.indentNext=V;else this.indentNext=this.blockScalarIndent+(this.indentNext===0?1:this.indentNext);do{let J=this.continueScalar(z+1);if(J===-1)break;z=this.buffer.indexOf(`\n`,J)}while(z!==-1);if(z===-1){if(!this.atEnd)return this.setNext(\"block-scalar\");z=this.buffer.length}}let $=z+1;X=this.buffer[$];while(X===\" \")X=this.buffer[++$];if(X===\"\\t\"){while(X===\"\\t\"||X===\" \"||X===\"\\r\"||X===`\n`)X=this.buffer[++$];z=$-1}else if(!this.blockScalarKeep)do{let J=z-1,W=this.buffer[J];if(W===\"\\r\")W=this.buffer[--J];let K=J;while(W===\" \")W=this.buffer[--J];if(W===`\n`&&J>=this.pos&&J+1+V>K)z=J;else break}while(!0);return yield Q.SCALAR,yield*this.pushToIndex(z+1,!0),yield*this.parseLineStart()}*parsePlainScalar(){let z=this.flowLevel>0,V=this.pos-1,X=this.pos-1,$;while($=this.buffer[++X])if($===\":\"){let J=this.buffer[X+1];if(G(J)||z&&_.has(J))break;V=X}else if(G($)){let J=this.buffer[X+1];if($===\"\\r\")if(J===`\n`)X+=1,$=`\n`,J=this.buffer[X+1];else V=X;if(J===\"#\"||z&&_.has(J))break;if($===`\n`){let W=this.continueScalar(X+1);if(W===-1)break;X=Math.max(X,W-2)}}else{if(z&&_.has($))break;V=X}if(!$&&!this.atEnd)return this.setNext(\"plain-scalar\");return yield Q.SCALAR,yield*this.pushToIndex(V+1,!0),z?\"flow\":\"doc\"}*pushCount(z){if(z>0)return yield this.buffer.substr(this.pos,z),this.pos+=z,z;return 0}*pushToIndex(z,V){let X=this.buffer.slice(this.pos,z);if(X)return yield X,this.pos+=X.length,X.length;else if(V)yield\"\";return 0}*pushIndicators(){switch(this.charAt(0)){case\"!\":return(yield*this.pushTag())+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case\"&\":return(yield*this.pushUntil(U))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case\"-\":case\"?\":case\":\":{let z=this.flowLevel>0,V=this.charAt(1);if(G(V)||z&&_.has(V)){if(!z)this.indentNext=this.indentValue+1;else if(this.flowKey)this.flowKey=!1;return(yield*this.pushCount(1))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators())}}}return 0}*pushTag(){if(this.charAt(1)===\"<\"){let z=this.pos+2,V=this.buffer[z];while(!G(V)&&V!==\">\")V=this.buffer[++z];return yield*this.pushToIndex(V===\">\"?z+1:z,!1)}else{let z=this.pos+1,V=this.buffer[z];while(V)if(O.has(V))V=this.buffer[++z];else if(V===\"%\"&&B.has(this.buffer[z+1])&&B.has(this.buffer[z+2]))V=this.buffer[z+=3];else break;return yield*this.pushToIndex(z,!1)}}*pushNewline(){let z=this.buffer[this.pos];if(z===`\n`)return yield*this.pushCount(1);else if(z===\"\\r\"&&this.charAt(1)===`\n`)return yield*this.pushCount(2);else return 0}*pushSpaces(z){let V=this.pos-1,X;do X=this.buffer[++V];while(X===\" \"||z&&X===\"\\t\");let $=V-this.pos;if($>0)yield this.buffer.substr(this.pos,$),this.pos=V;return $}*pushUntil(z){let V=this.pos,X=this.buffer[V];while(!z(X))X=this.buffer[++V];return yield*this.pushToIndex(V,!1)}}Z.Lexer=H}),oZ=S((Z)=>{class Q{constructor(){this.lineStarts=[],this.addNewLine=(G)=>this.lineStarts.push(G),this.linePos=(G)=>{let B=0,O=this.lineStarts.length;while(B<O){let Y=B+O>>1;if(this.lineStarts[Y]<G)B=Y+1;else O=Y}if(this.lineStarts[B]===G)return{line:B+1,col:1};if(B===0)return{line:0,col:G};let _=this.lineStarts[B-1];return{line:B,col:G-_+1}}}}Z.LineCounter=Q}),tZ=S((Z)=>{var Q=T0(\"process\"),G=GZ(),B=rZ();function O(X,$){for(let J=0;J<X.length;++J)if(X[J].type===$)return!0;return!1}function _(X){for(let $=0;$<X.length;++$)switch(X[$].type){case\"space\":case\"comment\":case\"newline\":break;default:return $}return-1}function Y(X){switch(X?.type){case\"alias\":case\"scalar\":case\"single-quoted-scalar\":case\"double-quoted-scalar\":case\"flow-collection\":return!0;default:return!1}}function U(X){switch(X.type){case\"document\":return X.start;case\"block-map\":{let $=X.items[X.items.length-1];return $.sep??$.start}case\"block-seq\":return X.items[X.items.length-1].start;default:return[]}}function H(X){if(X.length===0)return[];let $=X.length;Z:while(--$>=0)switch(X[$].type){case\"doc-start\":case\"explicit-key-ind\":case\"map-value-ind\":case\"seq-item-ind\":case\"newline\":break Z}while(X[++$]?.type===\"space\");return X.splice($,X.length)}function z(X){if(X.start.type===\"flow-seq-start\"){for(let $ of X.items)if($.sep&&!$.value&&!O($.start,\"explicit-key-ind\")&&!O($.sep,\"map-value-ind\")){if($.key)$.value=$.key;if(delete $.key,Y($.value))if($.value.end)Array.prototype.push.apply($.value.end,$.sep);else $.value.end=$.sep;else Array.prototype.push.apply($.start,$.sep);delete $.sep}}}class V{constructor(X){this.atNewLine=!0,this.atScalar=!1,this.indent=0,this.offset=0,this.onKeyLine=!1,this.stack=[],this.source=\"\",this.type=\"\",this.lexer=new B.Lexer,this.onNewLine=X}*parse(X,$=!1){if(this.onNewLine&&this.offset===0)this.onNewLine(0);for(let J of this.lexer.lex(X,$))yield*this.next(J);if(!$)yield*this.end()}*next(X){if(this.source=X,Q.env.LOG_TOKENS)console.log(\"|\",G.prettyToken(X));if(this.atScalar){this.atScalar=!1,yield*this.step(),this.offset+=X.length;return}let $=G.tokenType(X);if(!$){let J=`Not a YAML token: ${X}`;yield*this.pop({type:\"error\",offset:this.offset,message:J,source:X}),this.offset+=X.length}else if($===\"scalar\")this.atNewLine=!1,this.atScalar=!0,this.type=\"scalar\";else{switch(this.type=$,yield*this.step(),$){case\"newline\":if(this.atNewLine=!0,this.indent=0,this.onNewLine)this.onNewLine(this.offset+X.length);break;case\"space\":if(this.atNewLine&&X[0]===\" \")this.indent+=X.length;break;case\"explicit-key-ind\":case\"map-value-ind\":case\"seq-item-ind\":if(this.atNewLine)this.indent+=X.length;break;case\"doc-mode\":case\"flow-error-end\":return;default:this.atNewLine=!1}this.offset+=X.length}}*end(){while(this.stack.length>0)yield*this.pop()}get sourceToken(){return{type:this.type,offset:this.offset,indent:this.indent,source:this.source}}*step(){let X=this.peek(1);if(this.type===\"doc-end\"&&X?.type!==\"doc-end\"){while(this.stack.length>0)yield*this.pop();this.stack.push({type:\"doc-end\",offset:this.offset,source:this.source});return}if(!X)return yield*this.stream();switch(X.type){case\"document\":return yield*this.document(X);case\"alias\":case\"scalar\":case\"single-quoted-scalar\":case\"double-quoted-scalar\":return yield*this.scalar(X);case\"block-scalar\":return yield*this.blockScalar(X);case\"block-map\":return yield*this.blockMap(X);case\"block-seq\":return yield*this.blockSequence(X);case\"flow-collection\":return yield*this.flowCollection(X);case\"doc-end\":return yield*this.documentEnd(X)}yield*this.pop()}peek(X){return this.stack[this.stack.length-X]}*pop(X){let $=X??this.stack.pop();if(!$)yield{type:\"error\",offset:this.offset,source:\"\",message:\"Tried to pop an empty stack\"};else if(this.stack.length===0)yield $;else{let J=this.peek(1);if($.type===\"block-scalar\")$.indent=\"indent\"in J?J.indent:0;else if($.type===\"flow-collection\"&&J.type===\"document\")$.indent=0;if($.type===\"flow-collection\")z($);switch(J.type){case\"document\":J.value=$;break;case\"block-scalar\":J.props.push($);break;case\"block-map\":{let W=J.items[J.items.length-1];if(W.value){J.items.push({start:[],key:$,sep:[]}),this.onKeyLine=!0;return}else if(W.sep)W.value=$;else{Object.assign(W,{key:$,sep:[]}),this.onKeyLine=!W.explicitKey;return}break}case\"block-seq\":{let W=J.items[J.items.length-1];if(W.value)J.items.push({start:[],value:$});else W.value=$;break}case\"flow-collection\":{let W=J.items[J.items.length-1];if(!W||W.value)J.items.push({start:[],key:$,sep:[]});else if(W.sep)W.value=$;else Object.assign(W,{key:$,sep:[]});return}default:yield*this.pop(),yield*this.pop($)}if((J.type===\"document\"||J.type===\"block-map\"||J.type===\"block-seq\")&&($.type===\"block-map\"||$.type===\"block-seq\")){let W=$.items[$.items.length-1];if(W&&!W.sep&&!W.value&&W.start.length>0&&_(W.start)===-1&&($.indent===0||W.start.every((K)=>K.type!==\"comment\"||K.indent<$.indent))){if(J.type===\"document\")J.end=W.start;else J.items.push({start:W.start});$.items.splice(-1,1)}}}}*stream(){switch(this.type){case\"directive-line\":yield{type:\"directive\",offset:this.offset,source:this.source};return;case\"byte-order-mark\":case\"space\":case\"comment\":case\"newline\":yield this.sourceToken;return;case\"doc-mode\":case\"doc-start\":{let X={type:\"document\",offset:this.offset,start:[]};if(this.type===\"doc-start\")X.start.push(this.sourceToken);this.stack.push(X);return}}yield{type:\"error\",offset:this.offset,message:`Unexpected ${this.type} token in YAML stream`,source:this.source}}*document(X){if(X.value)return yield*this.lineEnd(X);switch(this.type){case\"doc-start\":{if(_(X.start)!==-1)yield*this.pop(),yield*this.step();else X.start.push(this.sourceToken);return}case\"anchor\":case\"tag\":case\"space\":case\"comment\":case\"newline\":X.start.push(this.sourceToken);return}let $=this.startBlockValue(X);if($)this.stack.push($);else yield{type:\"error\",offset:this.offset,message:`Unexpected ${this.type} token in YAML document`,source:this.source}}*scalar(X){if(this.type===\"map-value-ind\"){let $=U(this.peek(2)),J=H($),W;if(X.end)W=X.end,W.push(this.sourceToken),delete X.end;else W=[this.sourceToken];let K={type:\"block-map\",offset:X.offset,indent:X.indent,items:[{start:J,key:X,sep:W}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=K}else yield*this.lineEnd(X)}*blockScalar(X){switch(this.type){case\"space\":case\"comment\":case\"newline\":X.props.push(this.sourceToken);return;case\"scalar\":if(X.source=this.source,this.atNewLine=!0,this.indent=0,this.onNewLine){let $=this.source.indexOf(`\n`)+1;while($!==0)this.onNewLine(this.offset+$),$=this.source.indexOf(`\n`,$)+1}yield*this.pop();break;default:yield*this.pop(),yield*this.step()}}*blockMap(X){let $=X.items[X.items.length-1];switch(this.type){case\"newline\":if(this.onKeyLine=!1,$.value){let J=\"end\"in $.value?$.value.end:void 0;if((Array.isArray(J)?J[J.length-1]:void 0)?.type===\"comment\")J?.push(this.sourceToken);else X.items.push({start:[this.sourceToken]})}else if($.sep)$.sep.push(this.sourceToken);else $.start.push(this.sourceToken);return;case\"space\":case\"comment\":if($.value)X.items.push({start:[this.sourceToken]});else if($.sep)$.sep.push(this.sourceToken);else{if(this.atIndentedComment($.start,X.indent)){let W=X.items[X.items.length-2]?.value?.end;if(Array.isArray(W)){Array.prototype.push.apply(W,$.start),W.push(this.sourceToken),X.items.pop();return}}$.start.push(this.sourceToken)}return}if(this.indent>=X.indent){let J=!this.onKeyLine&&this.indent===X.indent,W=J&&($.sep||$.explicitKey)&&this.type!==\"seq-item-ind\",K=[];if(W&&$.sep&&!$.value){let F=[];for(let j=0;j<$.sep.length;++j){let R=$.sep[j];switch(R.type){case\"newline\":F.push(j);break;case\"space\":break;case\"comment\":if(R.indent>X.indent)F.length=0;break;default:F.length=0}}if(F.length>=2)K=$.sep.splice(F[1])}switch(this.type){case\"anchor\":case\"tag\":if(W||$.value)K.push(this.sourceToken),X.items.push({start:K}),this.onKeyLine=!0;else if($.sep)$.sep.push(this.sourceToken);else $.start.push(this.sourceToken);return;case\"explicit-key-ind\":if(!$.sep&&!$.explicitKey)$.start.push(this.sourceToken),$.explicitKey=!0;else if(W||$.value)K.push(this.sourceToken),X.items.push({start:K,explicitKey:!0});else this.stack.push({type:\"block-map\",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken],explicitKey:!0}]});this.onKeyLine=!0;return;case\"map-value-ind\":if($.explicitKey)if(!$.sep)if(O($.start,\"newline\"))Object.assign($,{key:null,sep:[this.sourceToken]});else{let F=H($.start);this.stack.push({type:\"block-map\",offset:this.offset,indent:this.indent,items:[{start:F,key:null,sep:[this.sourceToken]}]})}else if($.value)X.items.push({start:[],key:null,sep:[this.sourceToken]});else if(O($.sep,\"map-value-ind\"))this.stack.push({type:\"block-map\",offset:this.offset,indent:this.indent,items:[{start:K,key:null,sep:[this.sourceToken]}]});else if(Y($.key)&&!O($.sep,\"newline\")){let F=H($.start),j=$.key,R=$.sep;R.push(this.sourceToken),delete $.key,delete $.sep,this.stack.push({type:\"block-map\",offset:this.offset,indent:this.indent,items:[{start:F,key:j,sep:R}]})}else if(K.length>0)$.sep=$.sep.concat(K,this.sourceToken);else $.sep.push(this.sourceToken);else if(!$.sep)Object.assign($,{key:null,sep:[this.sourceToken]});else if($.value||W)X.items.push({start:K,key:null,sep:[this.sourceToken]});else if(O($.sep,\"map-value-ind\"))this.stack.push({type:\"block-map\",offset:this.offset,indent:this.indent,items:[{start:[],key:null,sep:[this.sourceToken]}]});else $.sep.push(this.sourceToken);this.onKeyLine=!0;return;case\"alias\":case\"scalar\":case\"single-quoted-scalar\":case\"double-quoted-scalar\":{let F=this.flowScalar(this.type);if(W||$.value)X.items.push({start:K,key:F,sep:[]}),this.onKeyLine=!0;else if($.sep)this.stack.push(F);else Object.assign($,{key:F,sep:[]}),this.onKeyLine=!0;return}default:{let F=this.startBlockValue(X);if(F){if(F.type===\"block-seq\"){if(!$.explicitKey&&$.sep&&!O($.sep,\"newline\")){yield*this.pop({type:\"error\",offset:this.offset,message:\"Unexpected block-seq-ind on same line with key\",source:this.source});return}}else if(J)X.items.push({start:K});this.stack.push(F);return}}}}yield*this.pop(),yield*this.step()}*blockSequence(X){let $=X.items[X.items.length-1];switch(this.type){case\"newline\":if($.value){let J=\"end\"in $.value?$.value.end:void 0;if((Array.isArray(J)?J[J.length-1]:void 0)?.type===\"comment\")J?.push(this.sourceToken);else X.items.push({start:[this.sourceToken]})}else $.start.push(this.sourceToken);return;case\"space\":case\"comment\":if($.value)X.items.push({start:[this.sourceToken]});else{if(this.atIndentedComment($.start,X.indent)){let W=X.items[X.items.length-2]?.value?.end;if(Array.isArray(W)){Array.prototype.push.apply(W,$.start),W.push(this.sourceToken),X.items.pop();return}}$.start.push(this.sourceToken)}return;case\"anchor\":case\"tag\":if($.value||this.indent<=X.indent)break;$.start.push(this.sourceToken);return;case\"seq-item-ind\":if(this.indent!==X.indent)break;if($.value||O($.start,\"seq-item-ind\"))X.items.push({start:[this.sourceToken]});else $.start.push(this.sourceToken);return}if(this.indent>X.indent){let J=this.startBlockValue(X);if(J){this.stack.push(J);return}}yield*this.pop(),yield*this.step()}*flowCollection(X){let $=X.items[X.items.length-1];if(this.type===\"flow-error-end\"){let J;do yield*this.pop(),J=this.peek(1);while(J?.type===\"flow-collection\")}else if(X.end.length===0){switch(this.type){case\"comma\":case\"explicit-key-ind\":if(!$||$.sep)X.items.push({start:[this.sourceToken]});else $.start.push(this.sourceToken);return;case\"map-value-ind\":if(!$||$.value)X.items.push({start:[],key:null,sep:[this.sourceToken]});else if($.sep)$.sep.push(this.sourceToken);else Object.assign($,{key:null,sep:[this.sourceToken]});return;case\"space\":case\"comment\":case\"newline\":case\"anchor\":case\"tag\":if(!$||$.value)X.items.push({start:[this.sourceToken]});else if($.sep)$.sep.push(this.sourceToken);else $.start.push(this.sourceToken);return;case\"alias\":case\"scalar\":case\"single-quoted-scalar\":case\"double-quoted-scalar\":{let W=this.flowScalar(this.type);if(!$||$.value)X.items.push({start:[],key:W,sep:[]});else if($.sep)this.stack.push(W);else Object.assign($,{key:W,sep:[]});return}case\"flow-map-end\":case\"flow-seq-end\":X.end.push(this.sourceToken);return}let J=this.startBlockValue(X);if(J)this.stack.push(J);else yield*this.pop(),yield*this.step()}else{let J=this.peek(2);if(J.type===\"block-map\"&&(this.type===\"map-value-ind\"&&J.indent===X.indent||this.type===\"newline\"&&!J.items[J.items.length-1].sep))yield*this.pop(),yield*this.step();else if(this.type===\"map-value-ind\"&&J.type!==\"flow-collection\"){let W=U(J),K=H(W);z(X);let F=X.end.splice(1,X.end.length);F.push(this.sourceToken);let j={type:\"block-map\",offset:X.offset,indent:X.indent,items:[{start:K,key:X,sep:F}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=j}else yield*this.lineEnd(X)}}flowScalar(X){if(this.onNewLine){let $=this.source.indexOf(`\n`)+1;while($!==0)this.onNewLine(this.offset+$),$=this.source.indexOf(`\n`,$)+1}return{type:X,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(X){switch(this.type){case\"alias\":case\"scalar\":case\"single-quoted-scalar\":case\"double-quoted-scalar\":return this.flowScalar(this.type);case\"block-scalar-header\":return{type:\"block-scalar\",offset:this.offset,indent:this.indent,props:[this.sourceToken],source:\"\"};case\"flow-map-start\":case\"flow-seq-start\":return{type:\"flow-collection\",offset:this.offset,indent:this.indent,start:this.sourceToken,items:[],end:[]};case\"seq-item-ind\":return{type:\"block-seq\",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken]}]};case\"explicit-key-ind\":{this.onKeyLine=!0;let $=U(X),J=H($);return J.push(this.sourceToken),{type:\"block-map\",offset:this.offset,indent:this.indent,items:[{start:J,explicitKey:!0}]}}case\"map-value-ind\":{this.onKeyLine=!0;let $=U(X),J=H($);return{type:\"block-map\",offset:this.offset,indent:this.indent,items:[{start:J,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment(X,$){if(this.type!==\"comment\")return!1;if(this.indent<=$)return!1;return X.every((J)=>J.type===\"newline\"||J.type===\"space\")}*documentEnd(X){if(this.type!==\"doc-mode\"){if(X.end)X.end.push(this.sourceToken);else X.end=[this.sourceToken];if(this.type===\"newline\")yield*this.pop()}}*lineEnd(X){switch(this.type){case\"comma\":case\"doc-start\":case\"doc-end\":case\"flow-seq-end\":case\"flow-map-end\":case\"map-value-ind\":yield*this.pop(),yield*this.step();break;case\"newline\":this.onKeyLine=!1;case\"space\":case\"comment\":default:if(X.end)X.end.push(this.sourceToken);else X.end=[this.sourceToken];if(this.type===\"newline\")yield*this.pop()}}}Z.Parser=V}),H8=S((Z)=>{var Q=aZ(),G=f0(),B=x0(),O=fZ(),_=y(),Y=oZ(),U=tZ();function H(J){let W=J.prettyErrors!==!1;return{lineCounter:J.lineCounter||W&&new Y.LineCounter||null,prettyErrors:W}}function z(J,W={}){let{lineCounter:K,prettyErrors:F}=H(W),j=new U.Parser(K?.addNewLine),R=new Q.Composer(W),q=Array.from(R.compose(j.parse(J)));if(F&&K)for(let I of q)I.errors.forEach(B.prettifyError(J,K)),I.warnings.forEach(B.prettifyError(J,K));if(q.length>0)return q;return Object.assign([],{empty:!0},R.streamInfo())}function V(J,W={}){let{lineCounter:K,prettyErrors:F}=H(W),j=new U.Parser(K?.addNewLine),R=new Q.Composer(W),q=null;for(let I of R.compose(j.parse(J),!0,J.length))if(!q)q=I;else if(q.options.logLevel!==\"silent\"){q.errors.push(new B.YAMLParseError(I.range.slice(0,2),\"MULTIPLE_DOCS\",\"Source contains multiple documents; please use YAML.parseAllDocuments()\"));break}if(F&&K)q.errors.forEach(B.prettifyError(J,K)),q.warnings.forEach(B.prettifyError(J,K));return q}function X(J,W,K){let F=void 0;if(typeof W===\"function\")F=W;else if(K===void 0&&W&&typeof W===\"object\")K=W;let j=V(J,K);if(!j)return null;if(j.warnings.forEach((R)=>O.warn(j.options.logLevel,R)),j.errors.length>0)if(j.options.logLevel!==\"silent\")throw j.errors[0];else j.errors=[];return j.toJS(Object.assign({reviver:F},K))}function $(J,W,K){let F=null;if(typeof W===\"function\"||Array.isArray(W))F=W;else if(K===void 0&&W)K=W;if(typeof K===\"string\")K=K.length;if(typeof K===\"number\"){let j=Math.round(K);K=j<1?void 0:j>8?{indent:8}:{indent:j}}if(J===void 0){let{keepUndefined:j}=K??W??{};if(!j)return}if(_.isDocument(J)&&!F)return J.toString(K);return new G.Document(J,F,K).toString(K)}Z.parse=X,Z.parseAllDocuments=z,Z.parseDocument=V,Z.stringify=$}),eZ=S((Z)=>{var Q=aZ(),G=f0(),B=lZ(),O=x0(),_=C0(),Y=y(),U=$0(),H=b(),z=z0(),V=Q0(),X=GZ(),$=rZ(),J=oZ(),W=tZ(),K=H8(),F=S0();Z.Composer=Q.Composer,Z.Document=G.Document,Z.Schema=B.Schema,Z.YAMLError=O.YAMLError,Z.YAMLParseError=O.YAMLParseError,Z.YAMLWarning=O.YAMLWarning,Z.Alias=_.Alias,Z.isAlias=Y.isAlias,Z.isCollection=Y.isCollection,Z.isDocument=Y.isDocument,Z.isMap=Y.isMap,Z.isNode=Y.isNode,Z.isPair=Y.isPair,Z.isScalar=Y.isScalar,Z.isSeq=Y.isSeq,Z.Pair=U.Pair,Z.Scalar=H.Scalar,Z.YAMLMap=z.YAMLMap,Z.YAMLSeq=V.YAMLSeq,Z.CST=X,Z.Lexer=$.Lexer,Z.LineCounter=J.LineCounter,Z.Parser=W.Parser,Z.parse=K.parse,Z.parseAllDocuments=K.parseAllDocuments,Z.parseDocument=K.parseDocument,Z.stringify=K.stringify,Z.visit=F.visit,Z.visitAsync=F.visitAsync});var Z6=[\"none\",\"acpx\",\"llama-cpp\",\"ollama\",\"claude-code\",\"codex\",\"opencode\",\"anthropic\",\"openrouter\",\"openai-compatible\",\"command\"],U8=Z6.filter((Z)=>Z!==\"command\");var t5=new Set(Z6),e5=new Set(U8);var X6=\"unicode61\";function K8(Z){return Z.replace(/\\s+/g,\" \").trim().toLowerCase()}function $6(Z){Z.exec(`\n\t\tCREATE VIRTUAL TABLE IF NOT EXISTS memories_fts USING fts5(\n\t\t\tcontent,\n\t\t\tcontent='memories',\n\t\t\tcontent_rowid='rowid',\n\t\t\ttokenize='${X6}'\n\t\t);\n\t`),Z.exec(`\n\t\tCREATE TRIGGER IF NOT EXISTS memories_ai AFTER INSERT ON memories BEGIN\n\t\t\tINSERT INTO memories_fts(rowid, content) VALUES (new.rowid, new.content);\n\t\tEND;\n\t`),Z.exec(`\n\t\tCREATE TRIGGER IF NOT EXISTS memories_ad AFTER DELETE ON memories BEGIN\n\t\t\tINSERT INTO memories_fts(memories_fts, rowid, content) VALUES('delete', old.rowid, old.content);\n\t\tEND;\n\t`),Z.exec(`\n\t\tCREATE TRIGGER IF NOT EXISTS memories_au AFTER UPDATE OF content ON memories BEGIN\n\t\t\tINSERT INTO memories_fts(memories_fts, rowid, content) VALUES('delete', old.rowid, old.content);\n\t\t\tINSERT INTO memories_fts(rowid, content) VALUES (new.rowid, new.content);\n\t\tEND;\n\t`)}function _8(Z){Z.exec(\"DROP TRIGGER IF EXISTS memories_ai\"),Z.exec(\"DROP TRIGGER IF EXISTS memories_ad\"),Z.exec(\"DROP TRIGGER IF EXISTS memories_au\"),Z.exec(\"DROP TABLE IF EXISTS memories_fts\"),$6(Z),Z.exec(\"INSERT INTO memories_fts(rowid, content) SELECT rowid, content FROM memories\")}function O8(Z){let Q=Z.prepare(\"SELECT sql FROM sqlite_master WHERE name = 'memories_fts' AND type = 'table'\").get();return typeof Q?.sql===\"string\"?Q.sql:null}function F8(Z){if(Z===null)return!1;let Q=K8(Z);if(Q.includes(\"porter unicode61\"))return!0;return!Q.includes(`tokenize='${X6}'`)}function j8(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS schema_migrations (\n\t\t\tversion INTEGER PRIMARY KEY,\n\t\t\tapplied_at TEXT NOT NULL,\n\t\t\tchecksum TEXT NOT NULL\n\t\t);\n\n\t\tCREATE TABLE IF NOT EXISTS conversations (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tsession_id TEXT NOT NULL,\n\t\t\tharness TEXT NOT NULL,\n\t\t\tstarted_at TEXT NOT NULL,\n\t\t\tended_at TEXT,\n\t\t\tsummary TEXT,\n\t\t\ttopics TEXT,\n\t\t\tdecisions TEXT,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tupdated_at TEXT NOT NULL,\n\t\t\tupdated_by TEXT NOT NULL,\n\t\t\tvector_clock TEXT NOT NULL DEFAULT '{}',\n\t\t\tversion INTEGER DEFAULT 1,\n\t\t\tmanual_override INTEGER DEFAULT 0\n\t\t);\n\n\t\tCREATE TABLE IF NOT EXISTS memories (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\ttype TEXT NOT NULL DEFAULT 'fact',\n\t\t\tcategory TEXT,\n\t\t\tcontent TEXT NOT NULL,\n\t\t\tconfidence REAL DEFAULT 1.0,\n\t\t\timportance REAL DEFAULT 0.5,\n\t\t\tsource_id TEXT,\n\t\t\tsource_type TEXT,\n\t\t\ttags TEXT,\n\t\t\twho TEXT,\n\t\t\twhy TEXT,\n\t\t\tproject TEXT,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tupdated_at TEXT NOT NULL,\n\t\t\tupdated_by TEXT NOT NULL DEFAULT 'system',\n\t\t\tlast_accessed TEXT,\n\t\t\taccess_count INTEGER DEFAULT 0,\n\t\t\tvector_clock TEXT NOT NULL DEFAULT '{}',\n\t\t\tversion INTEGER DEFAULT 1,\n\t\t\tmanual_override INTEGER DEFAULT 0,\n\t\t\tpinned INTEGER DEFAULT 0\n\t\t);\n\n\t\tCREATE TABLE IF NOT EXISTS embeddings (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tcontent_hash TEXT NOT NULL UNIQUE,\n\t\t\tvector BLOB NOT NULL,\n\t\t\tdimensions INTEGER NOT NULL,\n\t\t\tsource_type TEXT NOT NULL,\n\t\t\tsource_id TEXT NOT NULL,\n\t\t\tchunk_text TEXT NOT NULL,\n\t\t\tcreated_at TEXT NOT NULL\n\t\t);\n\n\t\t-- Indexes\n\t\tCREATE INDEX IF NOT EXISTS idx_conversations_session\n\t\t\tON conversations(session_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_conversations_harness\n\t\t\tON conversations(harness);\n\t\tCREATE INDEX IF NOT EXISTS idx_memories_type\n\t\t\tON memories(type);\n\t\tCREATE INDEX IF NOT EXISTS idx_memories_category\n\t\t\tON memories(category);\n\t\tCREATE INDEX IF NOT EXISTS idx_memories_pinned\n\t\t\tON memories(pinned);\n\t\tCREATE INDEX IF NOT EXISTS idx_memories_importance\n\t\t\tON memories(importance DESC);\n\t\tCREATE INDEX IF NOT EXISTS idx_memories_created\n\t\t\tON memories(created_at DESC);\n\t\tCREATE INDEX IF NOT EXISTS idx_embeddings_source\n\t\t\tON embeddings(source_type, source_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_embeddings_hash\n\t\t\tON embeddings(content_hash);\n\t`);try{Z.exec(`\n\t\t\tCREATE VIRTUAL TABLE IF NOT EXISTS vec_embeddings USING vec0(\n\t\t\t\tembedding FLOAT[768]\n\t\t\t);\n\t\t`)}catch{}$6(Z)}function R8(Z,Q,G){return Z.prepare(`PRAGMA table_info(${Q})`).all().some((O)=>O.name===G)}function u(Z,Q,G,B){if(!R8(Z,Q,G))Z.exec(`ALTER TABLE ${Q} ADD COLUMN ${G} ${B}`)}function q8(Z){u(Z,\"memories\",\"content_hash\",\"TEXT\"),u(Z,\"memories\",\"normalized_content\",\"TEXT\"),u(Z,\"memories\",\"is_deleted\",\"INTEGER DEFAULT 0\"),u(Z,\"memories\",\"deleted_at\",\"TEXT\"),u(Z,\"memories\",\"extraction_status\",\"TEXT DEFAULT 'none'\"),u(Z,\"memories\",\"embedding_model\",\"TEXT\"),u(Z,\"memories\",\"extraction_model\",\"TEXT\"),u(Z,\"memories\",\"update_count\",\"INTEGER DEFAULT 0\"),u(Z,\"memories\",\"who\",\"TEXT\"),u(Z,\"memories\",\"why\",\"TEXT\"),u(Z,\"memories\",\"project\",\"TEXT\"),u(Z,\"memories\",\"pinned\",\"INTEGER DEFAULT 0\"),u(Z,\"memories\",\"importance\",\"REAL DEFAULT 0.5\"),u(Z,\"memories\",\"last_accessed\",\"TEXT\"),u(Z,\"memories\",\"access_count\",\"INTEGER DEFAULT 0\"),Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS memory_history (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tmemory_id TEXT NOT NULL,\n\t\t\tevent TEXT NOT NULL,\n\t\t\told_content TEXT,\n\t\t\tnew_content TEXT,\n\t\t\tchanged_by TEXT NOT NULL,\n\t\t\treason TEXT,\n\t\t\tmetadata TEXT,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tFOREIGN KEY (memory_id) REFERENCES memories(id)\n\t\t);\n\t`),Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS memory_jobs (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tmemory_id TEXT NOT NULL,\n\t\t\tjob_type TEXT NOT NULL,\n\t\t\tstatus TEXT NOT NULL DEFAULT 'pending',\n\t\t\tpayload TEXT,\n\t\t\tresult TEXT,\n\t\t\tattempts INTEGER DEFAULT 0,\n\t\t\tmax_attempts INTEGER DEFAULT 3,\n\t\t\tleased_at TEXT,\n\t\t\tcompleted_at TEXT,\n\t\t\tfailed_at TEXT,\n\t\t\terror TEXT,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tupdated_at TEXT NOT NULL,\n\t\t\tFOREIGN KEY (memory_id) REFERENCES memories(id)\n\t\t);\n\t`),Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS entities (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tname TEXT NOT NULL UNIQUE,\n\t\t\tentity_type TEXT NOT NULL,\n\t\t\tdescription TEXT,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tupdated_at TEXT NOT NULL\n\t\t);\n\t`),Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS relations (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tsource_entity_id TEXT NOT NULL,\n\t\t\ttarget_entity_id TEXT NOT NULL,\n\t\t\trelation_type TEXT NOT NULL,\n\t\t\tstrength REAL DEFAULT 1.0,\n\t\t\tmetadata TEXT,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tFOREIGN KEY (source_entity_id) REFERENCES entities(id),\n\t\t\tFOREIGN KEY (target_entity_id) REFERENCES entities(id)\n\t\t);\n\t`),Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS memory_entity_mentions (\n\t\t\tmemory_id TEXT NOT NULL,\n\t\t\tentity_id TEXT NOT NULL,\n\t\t\tPRIMARY KEY (memory_id, entity_id),\n\t\t\tFOREIGN KEY (memory_id) REFERENCES memories(id),\n\t\t\tFOREIGN KEY (entity_id) REFERENCES entities(id)\n\t\t);\n\t`),Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS schema_migrations_audit (\n\t\t\tid INTEGER PRIMARY KEY AUTOINCREMENT,\n\t\t\tversion INTEGER NOT NULL,\n\t\t\tapplied_at TEXT NOT NULL,\n\t\t\tduration_ms INTEGER,\n\t\t\tchecksum TEXT\n\t\t);\n\t`),Z.exec(`\n\t\tCREATE INDEX IF NOT EXISTS idx_memories_content_hash\n\t\t\tON memories(content_hash);\n\t\tCREATE INDEX IF NOT EXISTS idx_memories_is_deleted\n\t\t\tON memories(is_deleted);\n\t\tCREATE INDEX IF NOT EXISTS idx_memories_extraction_status\n\t\t\tON memories(extraction_status);\n\t\tCREATE INDEX IF NOT EXISTS idx_memory_history_memory_id\n\t\t\tON memory_history(memory_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_memory_jobs_status\n\t\t\tON memory_jobs(status);\n\t\tCREATE INDEX IF NOT EXISTS idx_memory_jobs_memory_id\n\t\t\tON memory_jobs(memory_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_relations_source\n\t\t\tON relations(source_entity_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_relations_target\n\t\t\tON relations(target_entity_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_memory_entity_mentions_entity\n\t\t\tON memory_entity_mentions(entity_id);\n\t`)}function RZ(Z,Q,G,B){if(Z.prepare(`PRAGMA table_info(${Q})`).all().some((_)=>_.name===G))return!1;return Z.exec(`ALTER TABLE ${Q} ADD COLUMN ${G} ${B}`),!0}function L8(Z){RZ(Z,\"memories\",\"why\",\"TEXT\"),RZ(Z,\"memories\",\"project\",\"TEXT\"),Z.exec(\"DROP INDEX IF EXISTS idx_memories_content_hash\"),Z.exec(`\n\t\tUPDATE memories\n\t\tSET content_hash = NULL\n\t\tWHERE content_hash IS NOT NULL\n\t\t AND is_deleted = 0\n\t\t AND id NOT IN (\n\t\t\tSELECT id FROM (\n\t\t\t\tSELECT id, ROW_NUMBER() OVER (\n\t\t\t\t\tPARTITION BY content_hash\n\t\t\t\t\tORDER BY created_at DESC, rowid DESC\n\t\t\t\t) AS rn\n\t\t\t\tFROM memories\n\t\t\t\tWHERE content_hash IS NOT NULL\n\t\t\t\t AND is_deleted = 0\n\t\t\t) ranked\n\t\t\tWHERE rn = 1\n\t\t )\n\t`),Z.exec(`\n\t\tCREATE UNIQUE INDEX IF NOT EXISTS idx_memories_content_hash_unique\n\t\t\tON memories(content_hash)\n\t\t\tWHERE content_hash IS NOT NULL AND is_deleted = 0\n\t`)}function A8(Z,Q,G){return Z.prepare(`PRAGMA table_info(${Q})`).all().some((O)=>O.name===G)}function n0(Z,Q,G,B){if(!A8(Z,Q,G))Z.exec(`ALTER TABLE ${Q} ADD COLUMN ${G} ${B}`)}function I8(Z){n0(Z,\"memory_history\",\"actor_type\",\"TEXT\"),n0(Z,\"memory_history\",\"session_id\",\"TEXT\"),n0(Z,\"memory_history\",\"request_id\",\"TEXT\"),Z.exec(`\n\t\tCREATE INDEX IF NOT EXISTS idx_memories_deleted_at\n\t\t\tON memories(deleted_at)\n\t\t\tWHERE is_deleted = 1;\n\t`),Z.exec(`\n\t\tCREATE INDEX IF NOT EXISTS idx_memory_history_created_at\n\t\t\tON memory_history(created_at);\n\t`),Z.exec(`\n\t\tCREATE INDEX IF NOT EXISTS idx_memory_jobs_completed_at\n\t\t\tON memory_jobs(completed_at)\n\t\t\tWHERE status = 'completed';\n\t`),Z.exec(`\n\t\tCREATE INDEX IF NOT EXISTS idx_memory_jobs_failed_at\n\t\t\tON memory_jobs(failed_at)\n\t\t\tWHERE status = 'dead';\n\t`)}function M8(Z,Q,G){return Z.prepare(`PRAGMA table_info(${Q})`).all().some((O)=>O.name===G)}function s(Z,Q,G,B){if(!M8(Z,Q,G))Z.exec(`ALTER TABLE ${Q} ADD COLUMN ${G} ${B}`)}function D8(Z){s(Z,\"entities\",\"canonical_name\",\"TEXT\"),s(Z,\"entities\",\"mentions\",\"INTEGER DEFAULT 0\"),s(Z,\"entities\",\"embedding\",\"BLOB\"),s(Z,\"relations\",\"mentions\",\"INTEGER DEFAULT 1\"),s(Z,\"relations\",\"confidence\",\"REAL DEFAULT 0.5\"),s(Z,\"relations\",\"updated_at\",\"TEXT\"),s(Z,\"memory_entity_mentions\",\"mention_text\",\"TEXT\"),s(Z,\"memory_entity_mentions\",\"confidence\",\"REAL\"),s(Z,\"memory_entity_mentions\",\"created_at\",\"TEXT\"),Z.exec(\"CREATE INDEX IF NOT EXISTS idx_entities_canonical_name ON entities(canonical_name)\"),Z.exec(\"CREATE INDEX IF NOT EXISTS idx_relations_composite ON relations(source_entity_id, relation_type)\")}function qZ(Z,Q,G){return Z.prepare(`PRAGMA table_info(${Q})`).all().some((O)=>O.name===G)}function N8(Z){if(!qZ(Z,\"memories\",\"idempotency_key\"))Z.exec(\"ALTER TABLE memories ADD COLUMN idempotency_key TEXT\");if(Z.exec(`CREATE UNIQUE INDEX IF NOT EXISTS idx_memories_idempotency_key\n\t\t ON memories(idempotency_key)\n\t\t WHERE idempotency_key IS NOT NULL`),!qZ(Z,\"memories\",\"runtime_path\"))Z.exec(\"ALTER TABLE memories ADD COLUMN runtime_path TEXT\")}function T8(Z,Q,G){return Z.prepare(`PRAGMA table_info(${Q})`).all().some((O)=>O.name===G)}function S8(Z){if(Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS documents (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tsource_url TEXT,\n\t\t\tsource_type TEXT NOT NULL,\n\t\t\tcontent_type TEXT,\n\t\t\tcontent_hash TEXT,\n\t\t\ttitle TEXT,\n\t\t\traw_content TEXT,\n\t\t\tstatus TEXT NOT NULL DEFAULT 'queued',\n\t\t\terror TEXT,\n\t\t\tconnector_id TEXT,\n\t\t\tchunk_count INTEGER NOT NULL DEFAULT 0,\n\t\t\tmemory_count INTEGER NOT NULL DEFAULT 0,\n\t\t\tmetadata_json TEXT,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tupdated_at TEXT NOT NULL,\n\t\t\tcompleted_at TEXT\n\t\t)\n\t`),Z.exec(`CREATE INDEX IF NOT EXISTS idx_documents_status\n\t\t ON documents(status)`),Z.exec(`CREATE INDEX IF NOT EXISTS idx_documents_source_url\n\t\t ON documents(source_url)`),Z.exec(`CREATE INDEX IF NOT EXISTS idx_documents_connector_id\n\t\t ON documents(connector_id)`),Z.exec(`CREATE INDEX IF NOT EXISTS idx_documents_content_hash\n\t\t ON documents(content_hash)`),Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS document_memories (\n\t\t\tdocument_id TEXT NOT NULL REFERENCES documents(id),\n\t\t\tmemory_id TEXT NOT NULL REFERENCES memories(id),\n\t\t\tchunk_index INTEGER,\n\t\t\tPRIMARY KEY (document_id, memory_id)\n\t\t)\n\t`),Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS connectors (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tprovider TEXT NOT NULL,\n\t\t\tdisplay_name TEXT,\n\t\t\tconfig_json TEXT NOT NULL,\n\t\t\tcursor_json TEXT,\n\t\t\tstatus TEXT NOT NULL DEFAULT 'idle',\n\t\t\tlast_sync_at TEXT,\n\t\t\tlast_error TEXT,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tupdated_at TEXT NOT NULL\n\t\t)\n\t`),Z.exec(`CREATE INDEX IF NOT EXISTS idx_connectors_provider\n\t\t ON connectors(provider)`),!T8(Z,\"memory_jobs\",\"document_id\"))Z.exec(\"ALTER TABLE memory_jobs ADD COLUMN document_id TEXT\")}function C8(Z){if(Z.prepare(\"SELECT name FROM sqlite_master WHERE type='table' AND name='embeddings'\").all().length===0)return;Z.exec(`\n\t\tDELETE FROM embeddings\n\t\tWHERE rowid NOT IN (\n\t\t\tSELECT MIN(rowid) FROM embeddings\n\t\t\tGROUP BY content_hash\n\t\t)\n\t`),Z.exec(\"DROP INDEX IF EXISTS idx_embeddings_hash\"),Z.exec(`\n\t\tCREATE UNIQUE INDEX IF NOT EXISTS idx_embeddings_content_hash_unique\n\t\t\tON embeddings(content_hash)\n\t`)}function E8(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS summary_jobs (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tsession_key TEXT,\n\t\t\tharness TEXT NOT NULL,\n\t\t\tproject TEXT,\n\t\t\ttranscript TEXT NOT NULL,\n\t\t\tstatus TEXT NOT NULL DEFAULT 'pending',\n\t\t\tresult TEXT,\n\t\t\tattempts INTEGER DEFAULT 0,\n\t\t\tmax_attempts INTEGER DEFAULT 3,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tcompleted_at TEXT,\n\t\t\terror TEXT\n\t\t)\n\t`),Z.exec(`CREATE INDEX IF NOT EXISTS idx_summary_jobs_status\n\t\t ON summary_jobs(status)`)}function P8(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS umap_cache (\n\t\t\tid INTEGER PRIMARY KEY,\n\t\t\tdimensions INTEGER NOT NULL,\n\t\t\tembedding_count INTEGER NOT NULL,\n\t\t\tpayload TEXT NOT NULL,\n\t\t\tcreated_at TEXT NOT NULL\n\t\t)\n\t`)}function w8(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS session_scores (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tsession_key TEXT NOT NULL,\n\t\t\tproject TEXT,\n\t\t\tharness TEXT,\n\t\t\tscore REAL NOT NULL,\n\t\t\tmemories_recalled INTEGER,\n\t\t\tmemories_used INTEGER,\n\t\t\tnovel_context_count INTEGER,\n\t\t\treasoning TEXT,\n\t\t\tcreated_at TEXT NOT NULL\n\t\t);\n\t\tCREATE INDEX IF NOT EXISTS idx_session_scores_project\n\t\t\tON session_scores(project, created_at);\n\t\tCREATE INDEX IF NOT EXISTS idx_session_scores_session\n\t\t\tON session_scores(session_key);\n\t`)}function y8(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS scheduled_tasks (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tname TEXT NOT NULL,\n\t\t\tprompt TEXT NOT NULL,\n\t\t\tcron_expression TEXT NOT NULL,\n\t\t\tharness TEXT NOT NULL,\n\t\t\tworking_directory TEXT,\n\t\t\tenabled INTEGER NOT NULL DEFAULT 1,\n\t\t\tlast_run_at TEXT,\n\t\t\tnext_run_at TEXT,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tupdated_at TEXT NOT NULL\n\t\t);\n\t\tCREATE INDEX IF NOT EXISTS idx_scheduled_tasks_enabled_next\n\t\t\tON scheduled_tasks(enabled, next_run_at);\n\n\t\tCREATE TABLE IF NOT EXISTS task_runs (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\ttask_id TEXT NOT NULL REFERENCES scheduled_tasks(id) ON DELETE CASCADE,\n\t\t\tstatus TEXT NOT NULL DEFAULT 'pending',\n\t\t\tstarted_at TEXT NOT NULL,\n\t\t\tcompleted_at TEXT,\n\t\t\texit_code INTEGER,\n\t\t\tstdout TEXT,\n\t\t\tstderr TEXT,\n\t\t\terror TEXT\n\t\t);\n\t\tCREATE INDEX IF NOT EXISTS idx_task_runs_task_id\n\t\t\tON task_runs(task_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_task_runs_status\n\t\t\tON task_runs(status);\n\t`)}function LZ(Z,Q,G,B){if(!Z.prepare(`PRAGMA table_info(${Q})`).all().some((_)=>_.name===G))Z.exec(`ALTER TABLE ${Q} ADD COLUMN ${G} ${B}`)}function k8(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS ingestion_jobs (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tsource_path TEXT NOT NULL,\n\t\t\tsource_type TEXT NOT NULL,\n\t\t\tfile_hash TEXT,\n\t\t\tstatus TEXT NOT NULL DEFAULT 'pending',\n\t\t\tchunks_total INTEGER DEFAULT 0,\n\t\t\tchunks_processed INTEGER DEFAULT 0,\n\t\t\tmemories_created INTEGER DEFAULT 0,\n\t\t\tstarted_at TEXT NOT NULL,\n\t\t\tcompleted_at TEXT,\n\t\t\terror TEXT\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_ingestion_jobs_status\n\t\t\tON ingestion_jobs(status);\n\t\tCREATE INDEX IF NOT EXISTS idx_ingestion_jobs_file_hash\n\t\t\tON ingestion_jobs(file_hash);\n\t\tCREATE INDEX IF NOT EXISTS idx_ingestion_jobs_source_path\n\t\t\tON ingestion_jobs(source_path);\n\t`),LZ(Z,\"memories\",\"source_path\",\"TEXT\"),LZ(Z,\"memories\",\"source_section\",\"TEXT\")}function f8(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS telemetry_events (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tevent TEXT NOT NULL,\n\t\t\ttimestamp TEXT NOT NULL,\n\t\t\tproperties TEXT NOT NULL,\n\t\t\tsent_to_posthog INTEGER NOT NULL DEFAULT 0,\n\t\t\tcreated_at TEXT NOT NULL\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_telemetry_events_event\n\t\t\tON telemetry_events(event);\n\t\tCREATE INDEX IF NOT EXISTS idx_telemetry_events_timestamp\n\t\t\tON telemetry_events(timestamp);\n\t\tCREATE INDEX IF NOT EXISTS idx_telemetry_events_unsent\n\t\t\tON telemetry_events(sent_to_posthog) WHERE sent_to_posthog = 0;\n\t`)}function AZ(Z,Q,G,B){if(!Z.prepare(`PRAGMA table_info(${Q})`).all().some((_)=>_.name===G))Z.exec(`ALTER TABLE ${Q} ADD COLUMN ${G} ${B}`)}function x8(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS session_memories (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tsession_key TEXT NOT NULL,\n\t\t\tmemory_id TEXT NOT NULL,\n\t\t\tsource TEXT NOT NULL,\n\t\t\teffective_score REAL,\n\t\t\tpredictor_score REAL,\n\t\t\tfinal_score REAL NOT NULL,\n\t\t\trank INTEGER NOT NULL,\n\t\t\twas_injected INTEGER NOT NULL,\n\t\t\trelevance_score REAL,\n\t\t\tfts_hit_count INTEGER NOT NULL DEFAULT 0,\n\t\t\tagent_preference TEXT,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tUNIQUE(session_key, memory_id)\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_session_memories_session\n\t\t\tON session_memories(session_key);\n\t\tCREATE INDEX IF NOT EXISTS idx_session_memories_memory\n\t\t\tON session_memories(memory_id);\n\t`),AZ(Z,\"session_scores\",\"confidence\",\"REAL\"),AZ(Z,\"session_scores\",\"continuity_reasoning\",\"TEXT\")}function g8(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS session_checkpoints (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tsession_key TEXT NOT NULL,\n\t\t\tharness TEXT NOT NULL,\n\t\t\tproject TEXT,\n\t\t\tproject_normalized TEXT,\n\t\t\ttrigger TEXT NOT NULL,\n\t\t\tdigest TEXT NOT NULL,\n\t\t\tprompt_count INTEGER NOT NULL,\n\t\t\tmemory_queries TEXT,\n\t\t\trecent_remembers TEXT,\n\t\t\tcreated_at TEXT NOT NULL\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_checkpoints_session\n\t\t\tON session_checkpoints(session_key, created_at DESC);\n\t\tCREATE INDEX IF NOT EXISTS idx_checkpoints_project\n\t\t\tON session_checkpoints(project_normalized, created_at DESC);\n\t`)}function v8(Z){let Q=Z.prepare(\"PRAGMA table_info(scheduled_tasks)\").all(),G=new Set(Q.flatMap((B)=>typeof B.name===\"string\"?[B.name]:[]));if(!G.has(\"skill_name\"))Z.exec(\"ALTER TABLE scheduled_tasks ADD COLUMN skill_name TEXT\");if(!G.has(\"skill_mode\"))Z.exec(`ALTER TABLE scheduled_tasks ADD COLUMN skill_mode TEXT\n\t\t\t CHECK (skill_mode IN ('inject', 'slash') OR skill_mode IS NULL)`)}function b8(Z){if(Z.prepare(\"SELECT name FROM sqlite_master WHERE type='table' AND name='skill_meta'\").get())return;Z.exec(`\n\t\tCREATE TABLE skill_meta (\n\t\t\tentity_id TEXT PRIMARY KEY REFERENCES entities(id),\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tversion TEXT,\n\t\t\tauthor TEXT,\n\t\t\tlicense TEXT,\n\t\t\tsource TEXT NOT NULL,\n\t\t\trole TEXT NOT NULL DEFAULT 'utility',\n\t\t\ttriggers TEXT,\n\t\t\ttags TEXT,\n\t\t\tpermissions TEXT,\n\t\t\tenriched INTEGER DEFAULT 0,\n\t\t\tinstalled_at TEXT NOT NULL,\n\t\t\tlast_used_at TEXT,\n\t\t\tuse_count INTEGER DEFAULT 0,\n\t\t\timportance REAL DEFAULT 0.7,\n\t\t\tdecay_rate REAL DEFAULT 0.99,\n\t\t\tfs_path TEXT NOT NULL,\n\t\t\tuninstalled_at TEXT,\n\t\t\tcreated_at TEXT NOT NULL DEFAULT (datetime('now')),\n\t\t\tupdated_at TEXT NOT NULL DEFAULT (datetime('now'))\n\t\t);\n\n\t\tCREATE INDEX idx_skill_meta_agent ON skill_meta(agent_id);\n\t\tCREATE INDEX idx_skill_meta_source ON skill_meta(source);\n\t`)}function h8(Z){let Q=Z.prepare(\"PRAGMA table_info(entities)\").all();if(!new Set(Q.flatMap((B)=>typeof B.name===\"string\"?[B.name]:[])).has(\"agent_id\"))Z.exec(\"ALTER TABLE entities ADD COLUMN agent_id TEXT NOT NULL DEFAULT 'default'\");Z.exec(\"CREATE INDEX IF NOT EXISTS idx_entities_agent ON entities(agent_id)\"),Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS entity_aspects (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tentity_id TEXT NOT NULL REFERENCES entities(id) ON DELETE CASCADE,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tname TEXT NOT NULL,\n\t\t\tcanonical_name TEXT NOT NULL,\n\t\t\tweight REAL NOT NULL DEFAULT 0.5,\n\t\t\tcreated_at TEXT NOT NULL DEFAULT (datetime('now')),\n\t\t\tupdated_at TEXT NOT NULL DEFAULT (datetime('now')),\n\t\t\tUNIQUE(entity_id, canonical_name)\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_entity_aspects_entity ON entity_aspects(entity_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_entity_aspects_agent ON entity_aspects(agent_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_entity_aspects_weight ON entity_aspects(weight DESC);\n\t`),Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS entity_attributes (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\taspect_id TEXT REFERENCES entity_aspects(id) ON DELETE SET NULL,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tmemory_id TEXT REFERENCES memories(id) ON DELETE SET NULL,\n\t\t\tkind TEXT NOT NULL,\n\t\t\tcontent TEXT NOT NULL,\n\t\t\tnormalized_content TEXT NOT NULL,\n\t\t\tconfidence REAL NOT NULL DEFAULT 0.0,\n\t\t\timportance REAL NOT NULL DEFAULT 0.5,\n\t\t\tstatus TEXT NOT NULL DEFAULT 'active',\n\t\t\tsuperseded_by TEXT,\n\t\t\tcreated_at TEXT NOT NULL DEFAULT (datetime('now')),\n\t\t\tupdated_at TEXT NOT NULL DEFAULT (datetime('now'))\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_entity_attributes_aspect ON entity_attributes(aspect_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_entity_attributes_agent ON entity_attributes(agent_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_entity_attributes_kind ON entity_attributes(kind);\n\t\tCREATE INDEX IF NOT EXISTS idx_entity_attributes_status ON entity_attributes(status);\n\t`),Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS entity_dependencies (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tsource_entity_id TEXT NOT NULL REFERENCES entities(id) ON DELETE CASCADE,\n\t\t\ttarget_entity_id TEXT NOT NULL REFERENCES entities(id) ON DELETE CASCADE,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\taspect_id TEXT REFERENCES entity_aspects(id) ON DELETE SET NULL,\n\t\t\tdependency_type TEXT NOT NULL,\n\t\t\tstrength REAL NOT NULL DEFAULT 0.5,\n\t\t\tcreated_at TEXT NOT NULL DEFAULT (datetime('now')),\n\t\t\tupdated_at TEXT NOT NULL DEFAULT (datetime('now'))\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_entity_dependencies_source ON entity_dependencies(source_entity_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_entity_dependencies_target ON entity_dependencies(target_entity_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_entity_dependencies_agent ON entity_dependencies(agent_id);\n\t`),Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS task_meta (\n\t\t\tentity_id TEXT PRIMARY KEY REFERENCES entities(id) ON DELETE CASCADE,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tstatus TEXT NOT NULL,\n\t\t\texpires_at TEXT,\n\t\t\tretention_until TEXT,\n\t\t\tcompleted_at TEXT,\n\t\t\tupdated_at TEXT NOT NULL DEFAULT (datetime('now'))\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_task_meta_agent ON task_meta(agent_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_task_meta_status ON task_meta(status);\n\t\tCREATE INDEX IF NOT EXISTS idx_task_meta_retention ON task_meta(retention_until);\n\t`)}function M0(Z,Q,G,B){if(!Z.prepare(`PRAGMA table_info(${Q})`).all().some((_)=>_.name===G))Z.exec(`ALTER TABLE ${Q} ADD COLUMN ${G} ${B}`)}function m8(Z){M0(Z,\"session_memories\",\"entity_slot\",\"INTEGER\"),M0(Z,\"session_memories\",\"aspect_slot\",\"INTEGER\"),M0(Z,\"session_memories\",\"is_constraint\",\"INTEGER NOT NULL DEFAULT 0\"),M0(Z,\"session_memories\",\"structural_density\",\"INTEGER\")}function u8(Z){let Q=Z.prepare(\"PRAGMA table_info(session_checkpoints)\").all(),G=new Set(Q.flatMap((B)=>typeof B.name===\"string\"?[B.name]:[]));if(!G.has(\"focal_entity_ids\"))Z.exec(\"ALTER TABLE session_checkpoints ADD COLUMN focal_entity_ids TEXT\");if(!G.has(\"focal_entity_names\"))Z.exec(\"ALTER TABLE session_checkpoints ADD COLUMN focal_entity_names TEXT\");if(!G.has(\"active_aspect_ids\"))Z.exec(\"ALTER TABLE session_checkpoints ADD COLUMN active_aspect_ids TEXT\");if(!G.has(\"surfaced_constraint_count\"))Z.exec(\"ALTER TABLE session_checkpoints ADD COLUMN surfaced_constraint_count INTEGER\");if(!G.has(\"traversal_memory_count\"))Z.exec(\"ALTER TABLE session_checkpoints ADD COLUMN traversal_memory_count INTEGER\")}function IZ(Z,Q,G,B){if(!Z.prepare(`PRAGMA table_info(${Q})`).all().some((_)=>_.name===G))Z.exec(`ALTER TABLE ${Q} ADD COLUMN ${G} ${B}`)}function p8(Z){IZ(Z,\"entities\",\"pinned\",\"INTEGER NOT NULL DEFAULT 0\"),IZ(Z,\"entities\",\"pinned_at\",\"TEXT\"),Z.exec(\"CREATE INDEX IF NOT EXISTS idx_entities_pinned ON entities(agent_id, pinned, pinned_at DESC)\")}function d8(Z){}function l8(Z){}function MZ(Z,Q,G,B){if(!Z.prepare(`PRAGMA table_info(${Q})`).all().some((_)=>_.name===G))Z.exec(`ALTER TABLE ${Q} ADD COLUMN ${G} ${B}`)}function c8(Z){MZ(Z,\"session_memories\",\"agent_relevance_score\",\"REAL\"),MZ(Z,\"session_memories\",\"agent_feedback_count\",\"INTEGER DEFAULT 0\")}function i8(Z){}function n8(Z){Z.exec(`\n\t\tUPDATE entities\n\t\tSET canonical_name = REPLACE(REPLACE(REPLACE(\n\t\t\tLOWER(TRIM(name)),\n\t\t\t' ', ' '), ' ', ' '), ' ', ' ')\n\t\tWHERE canonical_name IS NULL\n\t`)}function s8(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS memories_cold (\n\t\t\tarchive_id TEXT PRIMARY KEY,\n\t\t\tmemory_id TEXT NOT NULL,\n\t\t\ttype TEXT DEFAULT 'fact',\n\t\t\tcategory TEXT,\n\t\t\tcontent TEXT NOT NULL,\n\t\t\tconfidence REAL DEFAULT 1.0,\n\t\t\timportance REAL DEFAULT 0.5,\n\t\t\tsource_id TEXT,\n\t\t\tsource_type TEXT,\n\t\t\ttags TEXT,\n\t\t\twho TEXT,\n\t\t\twhy TEXT,\n\t\t\tproject TEXT,\n\t\t\tcontent_hash TEXT,\n\t\t\tnormalized_content TEXT,\n\t\t\textraction_status TEXT,\n\t\t\tembedding_model TEXT,\n\t\t\textraction_model TEXT,\n\t\t\tupdate_count INTEGER DEFAULT 0,\n\t\t\toriginal_created_at TEXT NOT NULL,\n\t\t\tarchived_at TEXT NOT NULL,\n\t\t\tarchived_reason TEXT,\n\t\t\tcold_source_id TEXT,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\toriginal_row_json TEXT\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_cold_memory_id ON memories_cold(memory_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_cold_agent ON memories_cold(agent_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_cold_project ON memories_cold(project);\n\t\tCREATE INDEX IF NOT EXISTS idx_cold_archived_at ON memories_cold(archived_at);\n\t\tCREATE INDEX IF NOT EXISTS idx_cold_source ON memories_cold(cold_source_id);\n\t`)}function a8(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS session_summaries (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tproject TEXT,\n\t\t\tdepth INTEGER NOT NULL DEFAULT 0,\n\t\t\tkind TEXT NOT NULL CHECK(kind IN ('session', 'arc', 'epoch')),\n\t\t\tcontent TEXT NOT NULL,\n\t\t\ttoken_count INTEGER,\n\t\t\tearliest_at TEXT NOT NULL,\n\t\t\tlatest_at TEXT NOT NULL,\n\t\t\tsession_key TEXT,\n\t\t\tharness TEXT,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tcreated_at TEXT NOT NULL\n\t\t);\n\n\t\tCREATE TABLE IF NOT EXISTS session_summary_children (\n\t\t\tparent_id TEXT NOT NULL REFERENCES session_summaries(id) ON DELETE CASCADE,\n\t\t\tchild_id TEXT NOT NULL REFERENCES session_summaries(id) ON DELETE CASCADE,\n\t\t\tordinal INTEGER NOT NULL,\n\t\t\tPRIMARY KEY (parent_id, child_id)\n\t\t);\n\n\t\t-- No FK on memory_id: memories may be soft-deleted, purged, or\n\t\t-- archived to cold tier. The link is intentionally durable so\n\t\t-- summary lineage survives retention sweeps.\n\t\tCREATE TABLE IF NOT EXISTS session_summary_memories (\n\t\t\tsummary_id TEXT NOT NULL REFERENCES session_summaries(id) ON DELETE CASCADE,\n\t\t\tmemory_id TEXT NOT NULL,\n\t\t\tPRIMARY KEY (summary_id, memory_id)\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_summaries_project_depth ON session_summaries(project, depth);\n\t\tCREATE INDEX IF NOT EXISTS idx_summaries_kind ON session_summaries(kind);\n\t\tCREATE INDEX IF NOT EXISTS idx_summaries_agent ON session_summaries(agent_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_summaries_latest ON session_summaries(latest_at DESC);\n\t\tCREATE INDEX IF NOT EXISTS idx_summary_children_child ON session_summary_children(child_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_summaries_session_key ON session_summaries(session_key);\n\t\t-- Unique constraint prevents duplicate depth-0 rows on retry\n\t\tCREATE UNIQUE INDEX IF NOT EXISTS idx_summaries_session_depth\n\t\t\tON session_summaries(session_key, depth)\n\t\t\tWHERE session_key IS NOT NULL;\n\t`)}function r8(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS memory_jobs_new (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tmemory_id TEXT,\n\t\t\tjob_type TEXT NOT NULL,\n\t\t\tstatus TEXT NOT NULL DEFAULT 'pending',\n\t\t\tpayload TEXT,\n\t\t\tresult TEXT,\n\t\t\tattempts INTEGER DEFAULT 0,\n\t\t\tmax_attempts INTEGER DEFAULT 3,\n\t\t\tleased_at TEXT,\n\t\t\tcompleted_at TEXT,\n\t\t\tfailed_at TEXT,\n\t\t\terror TEXT,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tupdated_at TEXT NOT NULL,\n\t\t\tdocument_id TEXT,\n\t\t\tFOREIGN KEY (memory_id) REFERENCES memories(id)\n\t\t)\n\t`),Z.exec(`\n\t\tINSERT INTO memory_jobs_new\n\t\t\t(id, memory_id, job_type, status, payload, result,\n\t\t\t attempts, max_attempts, leased_at, completed_at, failed_at,\n\t\t\t error, created_at, updated_at, document_id)\n\t\tSELECT\n\t\t\tid, memory_id, job_type, status, payload, result,\n\t\t\tattempts, max_attempts, leased_at, completed_at, failed_at,\n\t\t\terror, created_at, updated_at, document_id\n\t\tFROM memory_jobs\n\t`),Z.exec(\"DROP TABLE IF EXISTS memory_jobs\"),Z.exec(\"ALTER TABLE memory_jobs_new RENAME TO memory_jobs\"),Z.exec(`\n\t\tCREATE INDEX IF NOT EXISTS idx_memory_jobs_status\n\t\t\tON memory_jobs(status);\n\t\tCREATE INDEX IF NOT EXISTS idx_memory_jobs_memory_id\n\t\t\tON memory_jobs(memory_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_memory_jobs_completed_at\n\t\t\tON memory_jobs(completed_at);\n\t\tCREATE INDEX IF NOT EXISTS idx_memory_jobs_failed_at\n\t\t\tON memory_jobs(failed_at);\n\t`)}function o8(Z){if(!Z.prepare(\"PRAGMA table_info(entity_dependencies)\").all().some((B)=>B.name===\"reason\"))Z.exec(\"ALTER TABLE entity_dependencies ADD COLUMN reason TEXT\");if(!Z.prepare(\"PRAGMA table_info(entities)\").all().some((B)=>B.name===\"last_synthesized_at\"))Z.exec(\"ALTER TABLE entities ADD COLUMN last_synthesized_at TEXT\")}function t8(Z){let Q=Z.prepare(\"PRAGMA table_info(embeddings)\").all();if(Q.length===0)return;if(!Q.some((G)=>G.name===\"vector\"))Z.exec(\"ALTER TABLE embeddings ADD COLUMN vector BLOB\")}function e8(Z){if(!Z.prepare(\"PRAGMA table_info(memories)\").all().some((G)=>G.name===\"scope\"))Z.exec(\"ALTER TABLE memories ADD COLUMN scope TEXT DEFAULT NULL\");Z.exec(\"CREATE INDEX IF NOT EXISTS idx_memories_scope ON memories(scope) WHERE scope IS NOT NULL\")}function Z9(Z){Z.exec(\"DROP INDEX IF EXISTS idx_memories_content_hash_unique\"),Z.exec(`\n\t\tCREATE UNIQUE INDEX idx_memories_content_hash_unique\n\t\tON memories(content_hash, COALESCE(scope, '__NULL__'))\n\t\tWHERE content_hash IS NOT NULL AND is_deleted = 0\n\t`)}function X9(Z){Z.exec(`\n\t\tCREATE VIRTUAL TABLE IF NOT EXISTS entities_fts USING fts5(\n\t\t\tname, canonical_name,\n\t\t\tcontent='entities', content_rowid='rowid'\n\t\t)\n\t`),Z.exec(`\n\t\tINSERT INTO entities_fts(rowid, name, canonical_name)\n\t\tSELECT rowid, name, canonical_name FROM entities\n\t`),Z.exec(`\n\t\tCREATE TRIGGER IF NOT EXISTS entities_fts_ai AFTER INSERT ON entities BEGIN\n\t\t\tINSERT INTO entities_fts(rowid, name, canonical_name)\n\t\t\tVALUES (new.rowid, new.name, new.canonical_name);\n\t\tEND\n\t`),Z.exec(`\n\t\tCREATE TRIGGER IF NOT EXISTS entities_fts_ad AFTER DELETE ON entities BEGIN\n\t\t\tINSERT INTO entities_fts(entities_fts, rowid, name, canonical_name)\n\t\t\tVALUES ('delete', old.rowid, old.name, old.canonical_name);\n\t\tEND\n\t`),Z.exec(`\n\t\tCREATE TRIGGER IF NOT EXISTS entities_fts_au AFTER UPDATE ON entities BEGIN\n\t\t\tINSERT INTO entities_fts(entities_fts, rowid, name, canonical_name)\n\t\t\tVALUES ('delete', old.rowid, old.name, old.canonical_name);\n\t\t\tINSERT INTO entities_fts(rowid, name, canonical_name)\n\t\t\tVALUES (new.rowid, new.name, new.canonical_name);\n\t\tEND\n\t`)}function $9(Z){if(!Z.prepare(\"PRAGMA table_info(entity_dependencies)\").all().some((G)=>G.name===\"confidence\"))Z.exec(\"ALTER TABLE entity_dependencies ADD COLUMN confidence REAL DEFAULT 0.7\")}function z9(Z){if(Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS entity_communities (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tagent_id TEXT NOT NULL,\n\t\t\tname TEXT,\n\t\t\tcohesion REAL DEFAULT 0.0,\n\t\t\tmember_count INTEGER DEFAULT 0,\n\t\t\tcreated_at TEXT NOT NULL DEFAULT (datetime('now')),\n\t\t\tupdated_at TEXT NOT NULL DEFAULT (datetime('now'))\n\t\t)\n\t`),Z.exec(\"CREATE INDEX IF NOT EXISTS idx_entity_communities_agent ON entity_communities(agent_id)\"),!Z.prepare(\"PRAGMA table_info(entities)\").all().some((G)=>G.name===\"community_id\"))Z.exec(\"ALTER TABLE entities ADD COLUMN community_id TEXT REFERENCES entity_communities(id)\")}function Q9(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS memory_hints (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tmemory_id TEXT NOT NULL REFERENCES memories(id) ON DELETE CASCADE,\n\t\t\tagent_id TEXT NOT NULL,\n\t\t\thint TEXT NOT NULL,\n\t\t\tcreated_at TEXT NOT NULL DEFAULT (datetime('now')),\n\t\t\tUNIQUE(memory_id, hint)\n\t\t)\n\t`),Z.exec(\"CREATE INDEX IF NOT EXISTS idx_hints_memory ON memory_hints(memory_id)\"),Z.exec(\"CREATE INDEX IF NOT EXISTS idx_hints_agent ON memory_hints(agent_id)\"),Z.exec(`\n\t\tCREATE VIRTUAL TABLE IF NOT EXISTS memory_hints_fts USING fts5(\n\t\t\thint,\n\t\t\tcontent='memory_hints', content_rowid='rowid'\n\t\t)\n\t`),Z.exec(`\n\t\tCREATE TRIGGER IF NOT EXISTS memory_hints_fts_ai AFTER INSERT ON memory_hints BEGIN\n\t\t\tINSERT INTO memory_hints_fts(rowid, hint)\n\t\t\tVALUES (new.rowid, new.hint);\n\t\tEND\n\t`),Z.exec(`\n\t\tCREATE TRIGGER IF NOT EXISTS memory_hints_fts_ad AFTER DELETE ON memory_hints BEGIN\n\t\t\tINSERT INTO memory_hints_fts(memory_hints_fts, rowid, hint)\n\t\t\tVALUES ('delete', old.rowid, old.hint);\n\t\tEND\n\t`),Z.exec(`\n\t\tCREATE TRIGGER IF NOT EXISTS memory_hints_fts_au AFTER UPDATE ON memory_hints BEGIN\n\t\t\tINSERT INTO memory_hints_fts(memory_hints_fts, rowid, hint)\n\t\t\tVALUES ('delete', old.rowid, old.hint);\n\t\t\tINSERT INTO memory_hints_fts(rowid, hint)\n\t\t\tVALUES (new.rowid, new.hint);\n\t\tEND\n\t`)}function J9(Z){Z.exec(`\n\t\tDELETE FROM entity_dependencies\n\t\tWHERE id NOT IN (\n\t\t\tSELECT MIN(id) FROM entity_dependencies\n\t\t\tGROUP BY source_entity_id, target_entity_id,\n\t\t\t dependency_type, agent_id\n\t\t)\n\t`),Z.exec(`\n\t\tCREATE UNIQUE INDEX IF NOT EXISTS\n\t\t\tidx_entity_deps_unique\n\t\tON entity_dependencies(\n\t\t\tsource_entity_id, target_entity_id,\n\t\t\tdependency_type, agent_id\n\t\t)\n\t`)}function G9(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS session_transcripts (\n\t\t\tsession_key TEXT PRIMARY KEY,\n\t\t\tcontent TEXT NOT NULL,\n\t\t\tharness TEXT,\n\t\t\tproject TEXT,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tcreated_at TEXT NOT NULL\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_st_project\n\t\t\tON session_transcripts(project);\n\t\tCREATE INDEX IF NOT EXISTS idx_st_created\n\t\t\tON session_transcripts(created_at);\n\t`)}function W9(Z,Q,G,B){if(!Z.prepare(`PRAGMA table_info(${Q})`).all().some((_)=>_.name===G))Z.exec(`ALTER TABLE ${Q} ADD COLUMN ${G} ${B}`)}function V9(Z){W9(Z,\"session_memories\",\"path_json\",\"TEXT\"),Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS path_feedback_events (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tagent_id TEXT NOT NULL,\n\t\t\tsession_key TEXT NOT NULL,\n\t\t\tmemory_id TEXT NOT NULL,\n\t\t\tpath_hash TEXT NOT NULL,\n\t\t\tpath_json TEXT NOT NULL,\n\t\t\trating REAL NOT NULL,\n\t\t\treward REAL NOT NULL DEFAULT 0,\n\t\t\treward_forward REAL NOT NULL DEFAULT 0,\n\t\t\treward_update REAL NOT NULL DEFAULT 0,\n\t\t\treward_downstream REAL NOT NULL DEFAULT 0,\n\t\t\treward_dead_end REAL NOT NULL DEFAULT 0,\n\t\t\tcreated_at TEXT NOT NULL\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_path_feedback_events_agent_path\n\t\t\tON path_feedback_events(agent_id, path_hash);\n\t\tCREATE INDEX IF NOT EXISTS idx_path_feedback_events_session\n\t\t\tON path_feedback_events(session_key);\n\t\tCREATE INDEX IF NOT EXISTS idx_path_feedback_events_memory\n\t\t\tON path_feedback_events(memory_id);\n\n\t\tCREATE TABLE IF NOT EXISTS path_feedback_stats (\n\t\t\tagent_id TEXT NOT NULL,\n\t\t\tpath_hash TEXT NOT NULL,\n\t\t\tpath_json TEXT NOT NULL,\n\t\t\tq_value REAL NOT NULL DEFAULT 0,\n\t\t\tsample_count INTEGER NOT NULL DEFAULT 0,\n\t\t\tpositive_count INTEGER NOT NULL DEFAULT 0,\n\t\t\tnegative_count INTEGER NOT NULL DEFAULT 0,\n\t\t\tneutral_count INTEGER NOT NULL DEFAULT 0,\n\t\t\tupdated_at TEXT NOT NULL,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tPRIMARY KEY (agent_id, path_hash)\n\t\t);\n\n\t\tCREATE TABLE IF NOT EXISTS entity_retrieval_stats (\n\t\t\tagent_id TEXT NOT NULL,\n\t\t\tentity_id TEXT NOT NULL,\n\t\t\tsession_count INTEGER NOT NULL DEFAULT 0,\n\t\t\tlast_session_key TEXT,\n\t\t\tupdated_at TEXT NOT NULL,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tPRIMARY KEY (agent_id, entity_id)\n\t\t);\n\n\t\tCREATE TABLE IF NOT EXISTS entity_cooccurrence (\n\t\t\tagent_id TEXT NOT NULL,\n\t\t\tsource_entity_id TEXT NOT NULL,\n\t\t\ttarget_entity_id TEXT NOT NULL,\n\t\t\tsession_count INTEGER NOT NULL DEFAULT 0,\n\t\t\tlast_session_key TEXT,\n\t\t\tupdated_at TEXT NOT NULL,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tPRIMARY KEY (agent_id, source_entity_id, target_entity_id)\n\t\t);\n\n\t\tCREATE TABLE IF NOT EXISTS path_feedback_sessions (\n\t\t\tagent_id TEXT NOT NULL,\n\t\t\tsession_key TEXT NOT NULL,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tPRIMARY KEY (agent_id, session_key)\n\t\t);\n\t`)}function o(Z,Q,G,B){if(Z.prepare(`PRAGMA table_info(${Q})`).all().some((_)=>_.name===G))return;Z.exec(`ALTER TABLE ${Q} ADD COLUMN ${G} ${B}`)}function H9(Z){o(Z,\"session_memories\",\"entity_slot\",\"INTEGER\"),o(Z,\"session_memories\",\"aspect_slot\",\"INTEGER\"),o(Z,\"session_memories\",\"is_constraint\",\"INTEGER NOT NULL DEFAULT 0\"),o(Z,\"session_memories\",\"structural_density\",\"INTEGER\"),o(Z,\"session_memories\",\"predictor_rank\",\"INTEGER\"),o(Z,\"session_memories\",\"agent_relevance_score\",\"REAL\"),o(Z,\"session_memories\",\"agent_feedback_count\",\"INTEGER DEFAULT 0\"),o(Z,\"session_memories\",\"path_json\",\"TEXT\");let B=Z.prepare(\"PRAGMA table_info(session_memories)\").all().some((O)=>O.name===\"agent_id\")?\"COALESCE(NULLIF(agent_id, ''), 'default')\":\"'default'\";Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS session_memories_new (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tsession_key TEXT NOT NULL,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tmemory_id TEXT NOT NULL,\n\t\t\tsource TEXT NOT NULL,\n\t\t\teffective_score REAL,\n\t\t\tpredictor_score REAL,\n\t\t\tfinal_score REAL NOT NULL,\n\t\t\trank INTEGER NOT NULL,\n\t\t\twas_injected INTEGER NOT NULL,\n\t\t\trelevance_score REAL,\n\t\t\tfts_hit_count INTEGER NOT NULL DEFAULT 0,\n\t\t\tagent_preference TEXT,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tentity_slot INTEGER,\n\t\t\taspect_slot INTEGER,\n\t\t\tis_constraint INTEGER NOT NULL DEFAULT 0,\n\t\t\tstructural_density INTEGER,\n\t\t\tpredictor_rank INTEGER,\n\t\t\tagent_relevance_score REAL,\n\t\t\tagent_feedback_count INTEGER DEFAULT 0,\n\t\t\tpath_json TEXT,\n\t\t\tUNIQUE(session_key, agent_id, memory_id)\n\t\t);\n\n\t\tINSERT INTO session_memories_new\n\t\t\t(id, session_key, agent_id, memory_id, source,\n\t\t\t effective_score, predictor_score, final_score, rank,\n\t\t\t was_injected, relevance_score, fts_hit_count,\n\t\t\t agent_preference, created_at, entity_slot, aspect_slot,\n\t\t\t is_constraint, structural_density, predictor_rank,\n\t\t\t agent_relevance_score, agent_feedback_count, path_json)\n\t\tSELECT\n\t\t\tid,\n\t\t\tsession_key,\n\t\t\t${B},\n\t\t\tmemory_id,\n\t\t\tsource,\n\t\t\teffective_score,\n\t\t\tpredictor_score,\n\t\t\tfinal_score,\n\t\t\trank,\n\t\t\twas_injected,\n\t\t\trelevance_score,\n\t\t\tfts_hit_count,\n\t\t\tagent_preference,\n\t\t\tcreated_at,\n\t\t\tentity_slot,\n\t\t\taspect_slot,\n\t\t\tCOALESCE(is_constraint, 0),\n\t\t\tstructural_density,\n\t\t\tpredictor_rank,\n\t\t\tagent_relevance_score,\n\t\t\tCOALESCE(agent_feedback_count, 0),\n\t\t\tpath_json\n\t\tFROM session_memories;\n\n\t\tDROP TABLE session_memories;\n\t\tALTER TABLE session_memories_new RENAME TO session_memories;\n\n\t\tCREATE INDEX IF NOT EXISTS idx_session_memories_session\n\t\t\tON session_memories(session_key);\n\t\tCREATE INDEX IF NOT EXISTS idx_session_memories_memory\n\t\t\tON session_memories(memory_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_session_memories_agent_session\n\t\t\tON session_memories(agent_id, session_key);\n\t`)}function DZ(Z,Q,G,B){if(Z.prepare(`PRAGMA table_info(${Q})`).all().some((_)=>_.name===G))return;Z.exec(`ALTER TABLE ${Q} ADD COLUMN ${G} ${B}`)}function U9(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS agents (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tname TEXT,\n\t\t\tread_policy TEXT NOT NULL DEFAULT 'isolated',\n\t\t\tpolicy_group TEXT,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tupdated_at TEXT NOT NULL\n\t\t);\n\t`);let Q=new Date().toISOString();Z.prepare(`INSERT OR IGNORE INTO agents (id, name, read_policy, created_at, updated_at)\n\t\t VALUES ('default', 'default', 'shared', ?, ?)`).run(Q,Q),DZ(Z,\"memories\",\"agent_id\",\"TEXT DEFAULT 'default'\"),DZ(Z,\"memories\",\"visibility\",\"TEXT DEFAULT 'global'\"),Z.exec(`\n\t\tCREATE INDEX IF NOT EXISTS idx_memories_agent_id\n\t\t\tON memories(agent_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_memories_agent_visibility\n\t\t\tON memories(agent_id, visibility);\n\t`)}function s0(Z,Q,G,B){if(Z.prepare(`PRAGMA table_info(${Q})`).all().some((_)=>_.name===G))return;Z.exec(`ALTER TABLE ${Q} ADD COLUMN ${G} ${B}`)}function Y9(Z){s0(Z,\"session_summaries\",\"source_type\",\"TEXT\"),s0(Z,\"session_summaries\",\"source_ref\",\"TEXT\"),s0(Z,\"session_summaries\",\"meta_json\",\"TEXT\"),Z.exec(`\n\t\tUPDATE session_summaries\n\t\tSET source_type = CASE\n\t\t\tWHEN source_type IS NOT NULL THEN source_type\n\t\t\tWHEN kind = 'session' THEN 'summary'\n\t\t\tWHEN kind IN ('arc', 'epoch') THEN 'condensation'\n\t\t\tELSE kind\n\t\tEND\n\t\tWHERE source_type IS NULL;\n\n\t\tCREATE INDEX IF NOT EXISTS idx_summaries_source_type\n\t\t\tON session_summaries(source_type);\n\t\tCREATE INDEX IF NOT EXISTS idx_summaries_source_ref\n\t\t\tON session_summaries(source_ref);\n\t`)}function a0(Z,Q,G,B){if(Z.prepare(`PRAGMA table_info(${Q})`).all().some((_)=>_.name===G))return;Z.exec(`ALTER TABLE ${Q} ADD COLUMN ${G} ${B}`)}function B9(Z){a0(Z,\"session_transcripts\",\"updated_at\",\"TEXT\"),a0(Z,\"summary_jobs\",\"agent_id\",\"TEXT NOT NULL DEFAULT 'default'\"),a0(Z,\"session_scores\",\"agent_id\",\"TEXT NOT NULL DEFAULT 'default'\"),Z.exec(`\n\t\tUPDATE session_transcripts\n\t\tSET updated_at = COALESCE(updated_at, created_at)\n\t\tWHERE updated_at IS NULL;\n\n\t\tUPDATE summary_jobs\n\t\tSET agent_id = COALESCE(agent_id, 'default')\n\t\tWHERE agent_id IS NULL;\n\n\t\tUPDATE session_scores\n\t\tSET agent_id = COALESCE(agent_id, 'default')\n\t\tWHERE agent_id IS NULL;\n\n\t\tCREATE INDEX IF NOT EXISTS idx_st_agent_updated\n\t\t\tON session_transcripts(agent_id, updated_at);\n\t\tCREATE INDEX IF NOT EXISTS idx_summary_jobs_agent\n\t\t\tON summary_jobs(agent_id, created_at);\n\t\tCREATE INDEX IF NOT EXISTS idx_session_scores_agent_session\n\t\t\tON session_scores(agent_id, session_key, created_at);\n\t`),Z.exec(`\n\t\tCREATE VIRTUAL TABLE IF NOT EXISTS session_transcripts_fts USING fts5(\n\t\t\tcontent,\n\t\t\tcontent='session_transcripts',\n\t\t\tcontent_rowid='rowid'\n\t\t)\n\t`),Z.exec(`\n\t\tCREATE TRIGGER IF NOT EXISTS session_transcripts_fts_ai AFTER INSERT ON session_transcripts BEGIN\n\t\t\tINSERT INTO session_transcripts_fts(rowid, content)\n\t\t\tVALUES (new.rowid, new.content);\n\t\tEND\n\t`),Z.exec(`\n\t\tCREATE TRIGGER IF NOT EXISTS session_transcripts_fts_ad AFTER DELETE ON session_transcripts BEGIN\n\t\t\tINSERT INTO session_transcripts_fts(session_transcripts_fts, rowid, content)\n\t\t\tVALUES ('delete', old.rowid, old.content);\n\t\tEND\n\t`),Z.exec(`\n\t\tCREATE TRIGGER IF NOT EXISTS session_transcripts_fts_au AFTER UPDATE ON session_transcripts BEGIN\n\t\t\tINSERT INTO session_transcripts_fts(session_transcripts_fts, rowid, content)\n\t\t\tVALUES ('delete', old.rowid, old.content);\n\t\t\tINSERT INTO session_transcripts_fts(rowid, content)\n\t\t\tVALUES (new.rowid, new.content);\n\t\tEND\n\t`),Z.exec(`\n\t\tINSERT INTO session_transcripts_fts(session_transcripts_fts)\n\t\tVALUES ('rebuild');\n\t`),Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS memory_md_heads (\n\t\t\tagent_id TEXT PRIMARY KEY,\n\t\t\tcontent TEXT NOT NULL DEFAULT '',\n\t\t\tcontent_hash TEXT NOT NULL DEFAULT '',\n\t\t\trevision INTEGER NOT NULL DEFAULT 0,\n\t\t\tupdated_at TEXT NOT NULL,\n\t\t\tlease_token TEXT,\n\t\t\tlease_owner TEXT,\n\t\t\tlease_expires_at TEXT\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_memory_md_heads_lease\n\t\t\tON memory_md_heads(lease_expires_at);\n\t`)}function K9(Z){Z.exec(`\n\t\tDROP INDEX IF EXISTS idx_summaries_session_depth;\n\n\t\tCREATE TEMP TABLE IF NOT EXISTS session_summary_duplicate_map AS\n\t\tWITH ranked AS (\n\t\t\tSELECT\n\t\t\t\tid,\n\t\t\t\tagent_id,\n\t\t\t\tsession_key,\n\t\t\t\tdepth,\n\t\t\t\tROW_NUMBER() OVER (\n\t\t\t\t\tPARTITION BY agent_id, session_key, depth\n\t\t\t\t\tORDER BY latest_at DESC, created_at DESC, id ASC\n\t\t\t\t) AS rn\n\t\t\tFROM session_summaries\n\t\t\tWHERE session_key IS NOT NULL\n\t\t\t AND COALESCE(source_type, 'summary') = 'summary'\n\t\t)\n\t\tSELECT dup.id AS drop_id, keep.id AS keep_id\n\t\tFROM ranked dup\n\t\tJOIN ranked keep\n\t\t ON keep.agent_id = dup.agent_id\n\t\t AND keep.session_key = dup.session_key\n\t\t AND keep.depth = dup.depth\n\t\t AND keep.rn = 1\n\t\tWHERE dup.rn > 1;\n\n\t\tINSERT OR IGNORE INTO session_summary_memories (summary_id, memory_id)\n\t\tSELECT map.keep_id, link.memory_id\n\t\tFROM session_summary_duplicate_map map\n\t\tJOIN session_summary_memories link ON link.summary_id = map.drop_id;\n\n\t\tINSERT OR IGNORE INTO session_summary_children (parent_id, child_id, ordinal)\n\t\tSELECT\n\t\t\tCOALESCE(parent_map.keep_id, rel.parent_id),\n\t\t\tCOALESCE(child_map.keep_id, rel.child_id),\n\t\t\trel.ordinal\n\t\tFROM session_summary_children rel\n\t\tLEFT JOIN session_summary_duplicate_map parent_map ON parent_map.drop_id = rel.parent_id\n\t\tLEFT JOIN session_summary_duplicate_map child_map ON child_map.drop_id = rel.child_id\n\t\tWHERE parent_map.drop_id IS NOT NULL OR child_map.drop_id IS NOT NULL;\n\n\t\tDELETE FROM session_summary_children\n\t\tWHERE parent_id IN (SELECT drop_id FROM session_summary_duplicate_map)\n\t\t OR child_id IN (SELECT drop_id FROM session_summary_duplicate_map);\n\n\t\tDELETE FROM session_summary_memories\n\t\tWHERE summary_id IN (SELECT drop_id FROM session_summary_duplicate_map);\n\n\t\tDELETE FROM session_summaries\n\t\tWHERE id IN (SELECT drop_id FROM session_summary_duplicate_map);\n\n\t\tDROP TABLE session_summary_duplicate_map;\n\n\t\tCREATE UNIQUE INDEX IF NOT EXISTS idx_summaries_session_depth_summary\n\t\t\tON session_summaries(agent_id, session_key, depth)\n\t\t\tWHERE session_key IS NOT NULL\n\t\t\t AND COALESCE(source_type, 'summary') = 'summary';\n\t`)}function _9(Z){Z.exec(`\n\t\tDROP TRIGGER IF EXISTS session_transcripts_fts_ai;\n\t\tDROP TRIGGER IF EXISTS session_transcripts_fts_ad;\n\t\tDROP TRIGGER IF EXISTS session_transcripts_fts_au;\n\t\tDROP TABLE IF EXISTS session_transcripts_fts;\n\n\t\tCREATE TABLE IF NOT EXISTS session_transcripts_next (\n\t\t\tsession_key TEXT NOT NULL,\n\t\t\tcontent TEXT NOT NULL,\n\t\t\tharness TEXT,\n\t\t\tproject TEXT,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tupdated_at TEXT,\n\t\t\tPRIMARY KEY (agent_id, session_key)\n\t\t);\n\n\t\tINSERT INTO session_transcripts_next (\n\t\t\tsession_key,\n\t\t\tcontent,\n\t\t\tharness,\n\t\t\tproject,\n\t\t\tagent_id,\n\t\t\tcreated_at,\n\t\t\tupdated_at\n\t\t)\n\t\tSELECT\n\t\t\tsession_key,\n\t\t\tcontent,\n\t\t\tharness,\n\t\t\tproject,\n\t\t\tagent_id,\n\t\t\tcreated_at,\n\t\t\tupdated_at\n\t\tFROM (\n\t\t\tSELECT\n\t\t\t\tsession_key,\n\t\t\t\tcontent,\n\t\t\t\tharness,\n\t\t\t\tproject,\n\t\t\t\tCOALESCE(agent_id, 'default') AS agent_id,\n\t\t\t\tcreated_at,\n\t\t\t\tCOALESCE(updated_at, created_at) AS updated_at,\n\t\t\t\tROW_NUMBER() OVER (\n\t\t\t\t\tPARTITION BY COALESCE(agent_id, 'default'), session_key\n\t\t\t\t\tORDER BY COALESCE(updated_at, created_at) DESC, LENGTH(content) DESC, created_at DESC, rowid DESC\n\t\t\t\t) AS rn\n\t\t\tFROM session_transcripts\n\t\t) ranked\n\t\tWHERE rn = 1;\n\n\t\tDROP TABLE session_transcripts;\n\t\tALTER TABLE session_transcripts_next RENAME TO session_transcripts;\n\n\t\tCREATE INDEX IF NOT EXISTS idx_st_project\n\t\t\tON session_transcripts(project);\n\t\tCREATE INDEX IF NOT EXISTS idx_st_created\n\t\t\tON session_transcripts(created_at);\n\t\tCREATE INDEX IF NOT EXISTS idx_st_agent_updated\n\t\t\tON session_transcripts(agent_id, updated_at);\n\n\t\tCREATE VIRTUAL TABLE IF NOT EXISTS session_transcripts_fts USING fts5(\n\t\t\tcontent,\n\t\t\tcontent='session_transcripts',\n\t\t\tcontent_rowid='rowid'\n\t\t);\n\n\t\tCREATE TRIGGER IF NOT EXISTS session_transcripts_fts_ai AFTER INSERT ON session_transcripts BEGIN\n\t\t\tINSERT INTO session_transcripts_fts(rowid, content)\n\t\t\tVALUES (new.rowid, new.content);\n\t\tEND;\n\n\t\tCREATE TRIGGER IF NOT EXISTS session_transcripts_fts_ad AFTER DELETE ON session_transcripts BEGIN\n\t\t\tINSERT INTO session_transcripts_fts(session_transcripts_fts, rowid, content)\n\t\t\tVALUES ('delete', old.rowid, old.content);\n\t\tEND;\n\n\t\tCREATE TRIGGER IF NOT EXISTS session_transcripts_fts_au AFTER UPDATE ON session_transcripts BEGIN\n\t\t\tINSERT INTO session_transcripts_fts(session_transcripts_fts, rowid, content)\n\t\t\tVALUES ('delete', old.rowid, old.content);\n\t\t\tINSERT INTO session_transcripts_fts(rowid, content)\n\t\t\tVALUES (new.rowid, new.content);\n\t\tEND;\n\n\t\tINSERT INTO session_transcripts_fts(session_transcripts_fts)\n\t\tVALUES ('rebuild');\n\n\t\tDROP INDEX IF EXISTS idx_summaries_session_depth;\n\t\tDROP INDEX IF EXISTS idx_summaries_session_depth_summary;\n\t\tCREATE INDEX IF NOT EXISTS idx_summaries_agent_session_key\n\t\t\tON session_summaries(agent_id, session_key);\n\t\tCREATE UNIQUE INDEX IF NOT EXISTS idx_summaries_agent_session_depth_summary\n\t\t\tON session_summaries(agent_id, session_key, depth)\n\t\t\tWHERE session_key IS NOT NULL\n\t\t\t AND COALESCE(source_type, 'summary') = 'summary';\n\t`)}function O9(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS memory_thread_heads (\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tthread_key TEXT NOT NULL,\n\t\t\tlabel TEXT NOT NULL,\n\t\t\tproject TEXT,\n\t\t\tsession_key TEXT,\n\t\t\tsource_type TEXT NOT NULL DEFAULT 'summary',\n\t\t\tsource_ref TEXT,\n\t\t\tharness TEXT,\n\t\t\tnode_id TEXT NOT NULL,\n\t\t\tlatest_at TEXT NOT NULL,\n\t\t\tsample TEXT NOT NULL,\n\t\t\tupdated_at TEXT NOT NULL,\n\t\t\tPRIMARY KEY (agent_id, thread_key)\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_thread_heads_agent_latest\n\t\t\tON memory_thread_heads(agent_id, latest_at DESC);\n\t\tCREATE INDEX IF NOT EXISTS idx_thread_heads_agent_project\n\t\t\tON memory_thread_heads(agent_id, project);\n\n\t\tINSERT INTO memory_thread_heads (\n\t\t\tagent_id, thread_key, label, project, session_key, source_type,\n\t\t\tsource_ref, harness, node_id, latest_at, sample, updated_at\n\t\t)\n\t\tSELECT\n\t\t\tss.agent_id,\n\t\t\tCASE\n\t\t\t\tWHEN ss.harness IS NOT NULL AND TRIM(ss.harness) != ''\n\t\t\t\t\t\tAND (ss.project IS NULL OR TRIM(ss.project) = '')\n\t\t\t\t\t\tAND (ss.source_ref IS NULL OR TRIM(ss.source_ref) = '')\n\t\t\t\t\t\tAND (ss.session_key IS NULL OR TRIM(ss.session_key) = '')\n\t\t\t\t\tTHEN 'harness:' || TRIM(ss.harness)\n\t\t\t\tELSE\n\t\t\t\t\tCASE\n\t\t\t\t\t\tWHEN ss.source_ref IS NOT NULL AND TRIM(ss.source_ref) != '' AND ss.project IS NOT NULL AND TRIM(ss.project) != '' THEN\n\t\t\t\t\t\t\t'project:' || TRIM(ss.project) || '|source:' || TRIM(ss.source_ref)\n\t\t\t\t\t\tWHEN ss.source_ref IS NOT NULL AND TRIM(ss.source_ref) != '' THEN 'source:' || TRIM(ss.source_ref)\n\t\t\t\t\t\tWHEN ss.session_key IS NOT NULL AND TRIM(ss.session_key) != '' AND ss.project IS NOT NULL AND TRIM(ss.project) != '' THEN\n\t\t\t\t\t\t\t'project:' || TRIM(ss.project) || '|session:' || TRIM(ss.session_key)\n\t\t\t\t\t\tWHEN ss.project IS NOT NULL AND TRIM(ss.project) != '' THEN 'project:' || TRIM(ss.project)\n\t\t\t\t\t\tWHEN ss.session_key IS NOT NULL AND TRIM(ss.session_key) != '' THEN 'session:' || TRIM(ss.session_key)\n\t\t\t\t\t\tELSE 'thread:unscoped'\n\t\t\t\t\tEND ||\n\t\t\t\t\tCASE\n\t\t\t\t\t\tWHEN ss.harness IS NOT NULL AND TRIM(ss.harness) != '' THEN '|harness:' || TRIM(ss.harness)\n\t\t\t\t\t\tELSE ''\n\t\t\t\t\tEND\n\t\t\tEND AS thread_key,\n\t\t\tCASE\n\t\t\t\tWHEN ss.source_ref IS NOT NULL AND TRIM(ss.source_ref) != '' AND ss.project IS NOT NULL AND TRIM(ss.project) != '' THEN\n\t\t\t\t\t'project:' || TRIM(ss.project) || '#source:' || TRIM(ss.source_ref)\n\t\t\t\tWHEN ss.source_ref IS NOT NULL AND TRIM(ss.source_ref) != '' THEN 'source:' || TRIM(ss.source_ref)\n\t\t\t\tWHEN ss.session_key IS NOT NULL AND TRIM(ss.session_key) != '' AND ss.project IS NOT NULL AND TRIM(ss.project) != '' THEN\n\t\t\t\t\t'project:' || TRIM(ss.project) || '#session:' || TRIM(ss.session_key)\n\t\t\t\tWHEN ss.project IS NOT NULL AND TRIM(ss.project) != '' THEN 'project:' || TRIM(ss.project)\n\t\t\t\tWHEN ss.session_key IS NOT NULL AND TRIM(ss.session_key) != '' THEN 'session:' || TRIM(ss.session_key)\n\t\t\t\tWHEN ss.harness IS NOT NULL AND TRIM(ss.harness) != '' THEN 'harness:' || TRIM(ss.harness)\n\t\t\t\tELSE 'thread:unscoped'\n\t\t\tEND AS label,\n\t\t\tss.project,\n\t\t\tss.session_key,\n\t\t\tCOALESCE(ss.source_type, ss.kind, 'summary') AS source_type,\n\t\t\tss.source_ref,\n\t\t\tss.harness,\n\t\t\tss.id AS node_id,\n\t\t\tss.latest_at,\n\t\t\tSUBSTR(REPLACE(REPLACE(TRIM(ss.content), CHAR(10), ' '), CHAR(13), ' '), 1, 240) AS sample,\n\t\t\tss.latest_at AS updated_at\n\t\tFROM (\n\t\t\tSELECT\n\t\t\t\ts0.*,\n\t\t\t\tROW_NUMBER() OVER (\n\t\t\t\t\tPARTITION BY s0.agent_id,\n\t\t\t\t\tCASE\n\t\t\t\t\t\tWHEN s0.harness IS NOT NULL AND TRIM(s0.harness) != ''\n\t\t\t\t\t\t\t\tAND (s0.project IS NULL OR TRIM(s0.project) = '')\n\t\t\t\t\t\t\t\tAND (s0.source_ref IS NULL OR TRIM(s0.source_ref) = '')\n\t\t\t\t\t\t\t\tAND (s0.session_key IS NULL OR TRIM(s0.session_key) = '')\n\t\t\t\t\t\t\tTHEN 'harness:' || TRIM(s0.harness)\n\t\t\t\t\t\tELSE\n\t\t\t\t\t\t\tCASE\n\t\t\t\t\t\t\t\tWHEN s0.source_ref IS NOT NULL AND TRIM(s0.source_ref) != '' AND s0.project IS NOT NULL AND TRIM(s0.project) != '' THEN\n\t\t\t\t\t\t\t\t\t'project:' || TRIM(s0.project) || '|source:' || TRIM(s0.source_ref)\n\t\t\t\t\t\t\t\tWHEN s0.source_ref IS NOT NULL AND TRIM(s0.source_ref) != '' THEN 'source:' || TRIM(s0.source_ref)\n\t\t\t\t\t\t\t\tWHEN s0.session_key IS NOT NULL AND TRIM(s0.session_key) != '' AND s0.project IS NOT NULL AND TRIM(s0.project) != '' THEN\n\t\t\t\t\t\t\t\t\t'project:' || TRIM(s0.project) || '|session:' || TRIM(s0.session_key)\n\t\t\t\t\t\t\t\tWHEN s0.project IS NOT NULL AND TRIM(s0.project) != '' THEN 'project:' || TRIM(s0.project)\n\t\t\t\t\t\t\t\tWHEN s0.session_key IS NOT NULL AND TRIM(s0.session_key) != '' THEN 'session:' || TRIM(s0.session_key)\n\t\t\t\t\t\t\t\tELSE 'thread:unscoped'\n\t\t\t\t\t\t\tEND ||\n\t\t\t\t\t\t\tCASE\n\t\t\t\t\t\t\t\tWHEN s0.harness IS NOT NULL AND TRIM(s0.harness) != '' THEN '|harness:' || TRIM(s0.harness)\n\t\t\t\t\t\t\t\tELSE ''\n\t\t\t\t\t\t\tEND\n\t\t\t\t\tEND\n\t\t\t\t\tORDER BY s0.latest_at DESC, s0.created_at DESC\n\t\t\t\t) AS rn\n\t\t\tFROM session_summaries s0\n\t\t\tWHERE COALESCE(s0.source_type, s0.kind) != 'chunk'\n\t\t) ss\n\t\tWHERE ss.rn = 1\n\t\tON CONFLICT(agent_id, thread_key) DO UPDATE SET\n\t\t\tlabel = excluded.label,\n\t\t\tproject = excluded.project,\n\t\t\tsession_key = excluded.session_key,\n\t\t\tsource_type = excluded.source_type,\n\t\t\tsource_ref = excluded.source_ref,\n\t\t\tharness = excluded.harness,\n\t\t\tnode_id = excluded.node_id,\n\t\t\tlatest_at = excluded.latest_at,\n\t\t\tsample = excluded.sample,\n\t\t\tupdated_at = excluded.updated_at\n\t\tWHERE excluded.latest_at >= memory_thread_heads.latest_at;\n\t`)}function F9(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS session_extract_cursors (\n\t\t\tsession_key TEXT NOT NULL,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tlast_offset INTEGER NOT NULL DEFAULT 0,\n\t\t\tlast_extract_at TEXT NOT NULL,\n\t\t\tPRIMARY KEY (session_key, agent_id)\n\t\t);\n\t`)}function j9(Z,Q){return Z.prepare(`SELECT name\n\t\t\t FROM sqlite_master\n\t\t\t WHERE type = 'table' AND name = ?\n\t\t\t LIMIT 1`).get(Q)!==void 0}function R9(Z){if(Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS entity_dependency_history (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tdependency_id TEXT NOT NULL,\n\t\t\tsource_entity_id TEXT NOT NULL,\n\t\t\ttarget_entity_id TEXT NOT NULL,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tdependency_type TEXT NOT NULL,\n\t\t\tevent TEXT NOT NULL,\n\t\t\tchanged_by TEXT NOT NULL,\n\t\t\treason TEXT NOT NULL,\n\t\t\tprevious_reason TEXT,\n\t\t\tmetadata TEXT,\n\t\t\tcreated_at TEXT NOT NULL DEFAULT (datetime('now'))\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_entity_dependency_history_dep\n\t\t\tON entity_dependency_history(dependency_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_entity_dependency_history_agent\n\t\t\tON entity_dependency_history(agent_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_entity_dependency_history_created\n\t\t\tON entity_dependency_history(created_at DESC);\n\t`),!j9(Z,\"entity_dependencies\"))return;Z.exec(\"DROP TRIGGER IF EXISTS trg_entity_dependencies_related_to_reason_insert\"),Z.exec(\"DROP TRIGGER IF EXISTS trg_entity_dependencies_related_to_reason_update\"),Z.exec(\"DROP TRIGGER IF EXISTS trg_entity_dependencies_audit_insert\"),Z.exec(\"DROP TRIGGER IF EXISTS trg_entity_dependencies_audit_update\"),Z.exec(\"DROP TRIGGER IF EXISTS trg_entity_dependencies_audit_delete\"),Z.exec(`\n\t\tCREATE TRIGGER trg_entity_dependencies_related_to_reason_insert\n\t\tBEFORE INSERT ON entity_dependencies\n\t\tFOR EACH ROW\n\t\tWHEN NEW.dependency_type = 'related_to'\n\t\t AND (NEW.reason IS NULL OR length(trim(NEW.reason)) = 0)\n\t\tBEGIN\n\t\t\tSELECT RAISE(ABORT, 'related_to dependencies require a non-empty reason');\n\t\tEND;\n\t`),Z.exec(`\n\t\tCREATE TRIGGER trg_entity_dependencies_related_to_reason_update\n\t\tBEFORE UPDATE OF dependency_type, reason ON entity_dependencies\n\t\tFOR EACH ROW\n\t\tWHEN NEW.dependency_type = 'related_to'\n\t\t AND (NEW.reason IS NULL OR length(trim(NEW.reason)) = 0)\n\t\tBEGIN\n\t\t\tSELECT RAISE(ABORT, 'related_to dependencies require a non-empty reason');\n\t\tEND;\n\t`),Z.exec(`\n\t\tCREATE TRIGGER trg_entity_dependencies_audit_insert\n\t\tAFTER INSERT ON entity_dependencies\n\t\tFOR EACH ROW\n\t\tBEGIN\n\t\t\tINSERT INTO entity_dependency_history (\n\t\t\t\tid, dependency_id, source_entity_id, target_entity_id, agent_id,\n\t\t\t\tdependency_type, event, changed_by, reason, previous_reason,\n\t\t\t\tmetadata, created_at\n\t\t\t) VALUES (\n\t\t\t\tlower(hex(randomblob(16))),\n\t\t\t\tNEW.id,\n\t\t\t\tNEW.source_entity_id,\n\t\t\t\tNEW.target_entity_id,\n\t\t\t\tNEW.agent_id,\n\t\t\t\tNEW.dependency_type,\n\t\t\t\t'created',\n\t\t\t\t'db-trigger',\n\t\t\t\tCOALESCE(NEW.reason, 'created without reason'),\n\t\t\t\tNULL,\n\t\t\t\t'{\"source\":\"trg_entity_dependencies_audit_insert\"}',\n\t\t\t\tdatetime('now')\n\t\t\t);\n\t\tEND;\n\t`),Z.exec(`\n\t\tCREATE TRIGGER trg_entity_dependencies_audit_update\n\t\tAFTER UPDATE ON entity_dependencies\n\t\tFOR EACH ROW\n\t\tBEGIN\n\t\t\tINSERT INTO entity_dependency_history (\n\t\t\t\tid, dependency_id, source_entity_id, target_entity_id, agent_id,\n\t\t\t\tdependency_type, event, changed_by, reason, previous_reason,\n\t\t\t\tmetadata, created_at\n\t\t\t) VALUES (\n\t\t\t\tlower(hex(randomblob(16))),\n\t\t\t\tNEW.id,\n\t\t\t\tNEW.source_entity_id,\n\t\t\t\tNEW.target_entity_id,\n\t\t\t\tNEW.agent_id,\n\t\t\t\tNEW.dependency_type,\n\t\t\t\t'updated',\n\t\t\t\t'db-trigger',\n\t\t\t\tCOALESCE(NEW.reason, 'updated without reason'),\n\t\t\t\tOLD.reason,\n\t\t\t\t'{\"source\":\"trg_entity_dependencies_audit_update\"}',\n\t\t\t\tdatetime('now')\n\t\t\t);\n\t\tEND;\n\t`),Z.exec(`\n\t\tCREATE TRIGGER trg_entity_dependencies_audit_delete\n\t\tAFTER DELETE ON entity_dependencies\n\t\tFOR EACH ROW\n\t\tBEGIN\n\t\t\tINSERT INTO entity_dependency_history (\n\t\t\t\tid, dependency_id, source_entity_id, target_entity_id, agent_id,\n\t\t\t\tdependency_type, event, changed_by, reason, previous_reason,\n\t\t\t\tmetadata, created_at\n\t\t\t) VALUES (\n\t\t\t\tlower(hex(randomblob(16))),\n\t\t\t\tOLD.id,\n\t\t\t\tOLD.source_entity_id,\n\t\t\t\tOLD.target_entity_id,\n\t\t\t\tOLD.agent_id,\n\t\t\t\tOLD.dependency_type,\n\t\t\t\t'deleted',\n\t\t\t\t'db-trigger',\n\t\t\t\tCOALESCE(OLD.reason, 'deleted without reason'),\n\t\t\t\tNULL,\n\t\t\t\t'{\"source\":\"trg_entity_dependencies_audit_delete\"}',\n\t\t\t\tdatetime('now')\n\t\t\t);\n\t\tEND;\n\t`),Z.exec(`\n\t\tINSERT INTO entity_dependency_history (\n\t\t\tid, dependency_id, source_entity_id, target_entity_id, agent_id,\n\t\t\tdependency_type, event, changed_by, reason, previous_reason,\n\t\t\tmetadata, created_at\n\t\t)\n\t\tSELECT\n\t\t\tlower(hex(randomblob(16))),\n\t\t\td.id,\n\t\t\td.source_entity_id,\n\t\t\td.target_entity_id,\n\t\t\td.agent_id,\n\t\t\td.dependency_type,\n\t\t\t'backfill',\n\t\t\t'migration-050',\n\t\t\tCASE\n\t\t\t\tWHEN d.reason IS NULL OR length(trim(d.reason)) = 0\n\t\t\t\t\tTHEN 'legacy dependency without recorded reason'\n\t\t\t\tELSE d.reason\n\t\t\tEND,\n\t\t\tNULL,\n\t\t\t'{\"source\":\"migration-050\"}',\n\t\t\tdatetime('now')\n\t\tFROM entity_dependencies d\n\t\tWHERE NOT EXISTS (\n\t\t\tSELECT 1\n\t\t\tFROM entity_dependency_history h\n\t\t\tWHERE h.dependency_id = d.id\n\t\t\t AND h.event = 'backfill'\n\t\t )\n\t`),Z.exec(`\n\t\tUPDATE entity_dependencies\n\t\tSET reason = 'legacy-unattributed related_to edge'\n\t\tWHERE dependency_type = 'related_to'\n\t\t AND (reason IS NULL OR length(trim(reason)) = 0)\n\t`)}function U0(Z,Q,G,B){if(Z.prepare(`PRAGMA table_info(${Q})`).all().some((_)=>_.name===G))return;Z.exec(`ALTER TABLE ${Q} ADD COLUMN ${G} ${B}`)}function q9(Z){U0(Z,\"summary_jobs\",\"session_id\",\"TEXT\"),U0(Z,\"summary_jobs\",\"trigger\",\"TEXT NOT NULL DEFAULT 'session_end'\"),U0(Z,\"summary_jobs\",\"captured_at\",\"TEXT\"),U0(Z,\"summary_jobs\",\"started_at\",\"TEXT\"),U0(Z,\"summary_jobs\",\"ended_at\",\"TEXT\"),Z.exec(`\n\t\tUPDATE summary_jobs\n\t\tSET\n\t\t\tsession_id = COALESCE(session_id, session_key, id),\n\t\t\ttrigger = COALESCE(NULLIF(trigger, ''), 'session_end'),\n\t\t\tcaptured_at = COALESCE(captured_at, completed_at, created_at),\n\t\t\tended_at = COALESCE(ended_at, completed_at)\n\t\tWHERE 1 = 1;\n\n\t\tCREATE INDEX IF NOT EXISTS idx_summary_jobs_agent_trigger\n\t\t\tON summary_jobs(agent_id, trigger, created_at);\n\t\tCREATE INDEX IF NOT EXISTS idx_summary_jobs_agent_session\n\t\t\tON summary_jobs(agent_id, session_key, created_at);\n\t`),Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS memory_artifacts (\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tsource_path TEXT NOT NULL,\n\t\t\tsource_sha256 TEXT NOT NULL,\n\t\t\tsource_kind TEXT NOT NULL,\n\t\t\tsession_id TEXT NOT NULL,\n\t\t\tsession_key TEXT,\n\t\t\tsession_token TEXT NOT NULL,\n\t\t\tproject TEXT,\n\t\t\tharness TEXT,\n\t\t\tcaptured_at TEXT NOT NULL,\n\t\t\tstarted_at TEXT,\n\t\t\tended_at TEXT,\n\t\t\tmanifest_path TEXT,\n\t\t\tsource_node_id TEXT,\n\t\t\tmemory_sentence TEXT,\n\t\t\tmemory_sentence_quality TEXT,\n\t\t\tcontent TEXT NOT NULL DEFAULT '',\n\t\t\tupdated_at TEXT NOT NULL,\n\t\t\tPRIMARY KEY (agent_id, source_path)\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_memory_artifacts_agent_kind\n\t\t\tON memory_artifacts(agent_id, source_kind, captured_at DESC);\n\t\tCREATE INDEX IF NOT EXISTS idx_memory_artifacts_agent_session\n\t\t\tON memory_artifacts(agent_id, session_token, captured_at DESC);\n\t\tCREATE INDEX IF NOT EXISTS idx_memory_artifacts_agent_membership\n\t\t\tON memory_artifacts(agent_id, COALESCE(ended_at, captured_at) DESC);\n\n\t\tCREATE TABLE IF NOT EXISTS memory_artifact_tombstones (\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tsession_token TEXT NOT NULL,\n\t\t\tremoved_at TEXT NOT NULL,\n\t\t\treason TEXT NOT NULL,\n\t\t\tremoved_paths TEXT NOT NULL,\n\t\t\tPRIMARY KEY (agent_id, session_token)\n\t\t);\n\t`),Z.exec(`\n\t\tCREATE VIRTUAL TABLE IF NOT EXISTS memory_artifacts_fts USING fts5(\n\t\t\tcontent,\n\t\t\tsource_path,\n\t\t\tcontent='memory_artifacts',\n\t\t\tcontent_rowid='rowid'\n\t\t)\n\t`),Z.exec(`\n\t\tCREATE TRIGGER IF NOT EXISTS memory_artifacts_fts_ai AFTER INSERT ON memory_artifacts BEGIN\n\t\t\tINSERT INTO memory_artifacts_fts(rowid, content, source_path)\n\t\t\tVALUES (new.rowid, new.content, new.source_path);\n\t\tEND\n\t`),Z.exec(`\n\t\tCREATE TRIGGER IF NOT EXISTS memory_artifacts_fts_ad AFTER DELETE ON memory_artifacts BEGIN\n\t\t\tINSERT INTO memory_artifacts_fts(memory_artifacts_fts, rowid, content, source_path)\n\t\t\tVALUES ('delete', old.rowid, old.content, old.source_path);\n\t\tEND\n\t`),Z.exec(`\n\t\tCREATE TRIGGER IF NOT EXISTS memory_artifacts_fts_au AFTER UPDATE ON memory_artifacts BEGIN\n\t\t\tINSERT INTO memory_artifacts_fts(memory_artifacts_fts, rowid, content, source_path)\n\t\t\tVALUES ('delete', old.rowid, old.content, old.source_path);\n\t\t\tINSERT INTO memory_artifacts_fts(rowid, content, source_path)\n\t\t\tVALUES (new.rowid, new.content, new.source_path);\n\t\tEND\n\t`),Z.exec(`\n\t\tINSERT INTO memory_artifacts_fts(memory_artifacts_fts)\n\t\tVALUES ('rebuild');\n\t`)}function L9(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS mcp_invocations (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tserver_id TEXT NOT NULL,\n\t\t\ttool_name TEXT NOT NULL,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tsource TEXT NOT NULL CHECK(source IN ('cli','agent','mcp','dashboard')),\n\t\t\tlatency_ms INTEGER NOT NULL,\n\t\t\tsuccess INTEGER NOT NULL DEFAULT 1,\n\t\t\terror_text TEXT,\n\t\t\tcreated_at TEXT NOT NULL DEFAULT (datetime('now'))\n\t\t);\n\t\tCREATE INDEX IF NOT EXISTS idx_mcp_inv_server ON mcp_invocations(server_id, created_at);\n\t\tCREATE INDEX IF NOT EXISTS idx_mcp_inv_agent ON mcp_invocations(agent_id, created_at);\n\t`)}function A9(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS skill_invocations (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tskill_name TEXT NOT NULL,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tsource TEXT NOT NULL CHECK(source IN ('agent','scheduler','api')),\n\t\t\tlatency_ms INTEGER NOT NULL,\n\t\t\tsuccess INTEGER NOT NULL DEFAULT 1,\n\t\t\terror_text TEXT,\n\t\t\tcreated_at TEXT NOT NULL DEFAULT (datetime('now'))\n\t\t);\n\t\tCREATE INDEX IF NOT EXISTS idx_skill_inv_name ON skill_invocations(skill_name, created_at);\n\t\tCREATE INDEX IF NOT EXISTS idx_skill_inv_agent ON skill_invocations(agent_id, created_at);\n\t`)}function I9(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS task_scope_hints (\n\t\t\ttask_id TEXT PRIMARY KEY REFERENCES scheduled_tasks(id) ON DELETE CASCADE,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tcreated_at TEXT NOT NULL DEFAULT (datetime('now')),\n\t\t\tupdated_at TEXT NOT NULL DEFAULT (datetime('now'))\n\t\t);\n\n\t\tINSERT INTO task_scope_hints (task_id, agent_id, created_at, updated_at)\n\t\tSELECT st.id,\n\t\t MIN(sm.agent_id),\n\t\t datetime('now'),\n\t\t datetime('now')\n\t\t FROM scheduled_tasks st\n\t\t JOIN entities e\n\t\t ON e.entity_type = 'skill'\n\t\t AND lower(e.name) = lower(st.skill_name)\n\t\t JOIN skill_meta sm\n\t\t ON sm.entity_id = e.id\n\t\t AND sm.agent_id = e.agent_id\n\t\t AND sm.uninstalled_at IS NULL\n\t\t WHERE st.skill_name IS NOT NULL\n\t\t GROUP BY st.id, lower(st.skill_name)\n\t\tHAVING COUNT(DISTINCT sm.agent_id) = 1\n\t\tON CONFLICT(task_id) DO NOTHING;\n\n\t\tCREATE INDEX IF NOT EXISTS idx_task_scope_hints_agent\n\t\t\tON task_scope_hints(agent_id, updated_at);\n\t`)}function M9(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS dreaming_state (\n\t\t\tagent_id TEXT PRIMARY KEY NOT NULL,\n\t\t\ttokens_since_last_pass INTEGER NOT NULL DEFAULT 0,\n\t\t\tconsecutive_failures INTEGER NOT NULL DEFAULT 0,\n\t\t\tlast_pass_at TEXT,\n\t\t\tlast_pass_id TEXT,\n\t\t\tlast_pass_mode TEXT,\n\t\t\tcreated_at TEXT NOT NULL DEFAULT (datetime('now')),\n\t\t\tupdated_at TEXT NOT NULL DEFAULT (datetime('now'))\n\t\t);\n\t`),Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS dreaming_passes (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tagent_id TEXT NOT NULL,\n\t\t\tmode TEXT NOT NULL DEFAULT 'incremental',\n\t\t\tstatus TEXT NOT NULL DEFAULT 'running',\n\t\t\tstarted_at TEXT NOT NULL DEFAULT (datetime('now')),\n\t\t\tcompleted_at TEXT,\n\t\t\ttokens_consumed INTEGER,\n\t\t\tmutations_applied INTEGER,\n\t\t\tmutations_skipped INTEGER,\n\t\t\tmutations_failed INTEGER,\n\t\t\tsummary TEXT,\n\t\t\terror TEXT,\n\t\t\tcreated_at TEXT NOT NULL DEFAULT (datetime('now'))\n\t\t);\n\t`),Z.exec(`\n\t\tCREATE INDEX IF NOT EXISTS idx_dreaming_passes_agent\n\t\tON dreaming_passes (agent_id, created_at DESC);\n\t`)}function D9(Z){let Q=Z.prepare(\"PRAGMA table_info(memories)\").all(),G=new Set(Q.map((B)=>B.name).filter((B)=>typeof B===\"string\"));if(!G.has(\"agent_id\"))Z.exec(\"ALTER TABLE memories ADD COLUMN agent_id TEXT DEFAULT 'default'\");if(!G.has(\"scope\"))Z.exec(\"ALTER TABLE memories ADD COLUMN scope TEXT\")}function N9(Z){D9(Z),Z.exec(\"DROP INDEX IF EXISTS idx_memories_content_hash_unique\"),Z.exec(`\n\t\tCREATE UNIQUE INDEX idx_memories_content_hash_unique\n\t\tON memories(\n\t\t\tcontent_hash,\n\t\t\tCOALESCE(NULLIF(agent_id, ''), 'default'),\n\t\t\tCOALESCE(scope, '__NULL__')\n\t\t)\n\t\tWHERE content_hash IS NOT NULL AND is_deleted = 0\n\t`)}function T9(Z){let Q=O8(Z);if(Q!==null&&!F8(Q))return;_8(Z)}function S9(Z){Z.exec(`CREATE INDEX IF NOT EXISTS idx_entities_order\n\t\t\tON entities(agent_id, pinned DESC, pinned_at DESC, mentions DESC, updated_at DESC, name)`),Z.exec(`CREATE INDEX IF NOT EXISTS idx_entities_extracted_mentions\n\t\t\tON entities(entity_type, mentions)\n\t\t\tWHERE entity_type = 'extracted'`)}function C9(Z){if(!Z.prepare(\"PRAGMA table_info(entity_attributes)\").all().some((G)=>G.name===\"claim_key\"))Z.exec(\"ALTER TABLE entity_attributes ADD COLUMN claim_key TEXT\");Z.exec(`CREATE INDEX IF NOT EXISTS idx_entity_attributes_claim_key\n\t\t\tON entity_attributes(agent_id, aspect_id, claim_key, status)\n\t\t\tWHERE claim_key IS NOT NULL`)}function E9(Z){if(!Z.prepare(\"PRAGMA table_info(entity_attributes)\").all().some((G)=>G.name===\"group_key\"))Z.exec(\"ALTER TABLE entity_attributes ADD COLUMN group_key TEXT\");Z.exec(`CREATE INDEX IF NOT EXISTS idx_entity_attributes_group_key\n\t\t\tON entity_attributes(agent_id, aspect_id, group_key, status)\n\t\t\tWHERE group_key IS NOT NULL`),Z.exec(`CREATE INDEX IF NOT EXISTS idx_entity_attributes_group_claim\n\t\t\tON entity_attributes(agent_id, aspect_id, group_key, claim_key, status)\n\t\t\tWHERE claim_key IS NOT NULL`)}function P9(Z){if(Z.prepare(\"PRAGMA table_info(memory_artifacts)\").all().some((G)=>G.name===\"source_mtime_ms\"))return;Z.exec(\"ALTER TABLE memory_artifacts ADD COLUMN source_mtime_ms REAL\")}function w9(Z){let Q=Z.prepare(\"PRAGMA table_info(memory_artifacts)\").all(),G=new Set(Q.map((B)=>B.name));if(!G.has(\"is_deleted\"))Z.exec(\"ALTER TABLE memory_artifacts ADD COLUMN is_deleted INTEGER NOT NULL DEFAULT 0\");if(!G.has(\"deleted_at\"))Z.exec(\"ALTER TABLE memory_artifacts ADD COLUMN deleted_at TEXT\");Z.exec(`\n\t\tCREATE INDEX IF NOT EXISTS idx_memory_artifacts_agent_deleted\n\t\t\tON memory_artifacts(agent_id, is_deleted, deleted_at)\n\t`)}function y9(Z){Z.exec(\"DROP TRIGGER IF EXISTS memories_au\"),Z.exec(`\n\t\tCREATE TRIGGER IF NOT EXISTS memories_au AFTER UPDATE OF content ON memories BEGIN\n\t\t\tINSERT INTO memories_fts(memories_fts, rowid, content) VALUES('delete', old.rowid, old.content);\n\t\t\tINSERT INTO memories_fts(rowid, content) VALUES (new.rowid, new.content);\n\t\tEND;\n\t`)}function k9(Z,Q,G){return Z.prepare(`PRAGMA table_info(${Q})`).all().some((O)=>O.name===G)}function D0(Z,Q,G,B){if(!k9(Z,Q,G))Z.exec(`ALTER TABLE ${Q} ADD COLUMN ${G} ${B}`)}function f9(Z){for(let Q of[\"entities\",\"entity_communities\",\"entity_attributes\",\"entity_dependencies\"])D0(Z,Q,\"source_id\",\"TEXT\"),D0(Z,Q,\"source_kind\",\"TEXT\"),D0(Z,Q,\"source_path\",\"TEXT\"),D0(Z,Q,\"source_root\",\"TEXT\");Z.exec(\"CREATE INDEX IF NOT EXISTS idx_entities_source ON entities(agent_id, source_id, source_path)\"),Z.exec(\"CREATE INDEX IF NOT EXISTS idx_entity_communities_source ON entity_communities(agent_id, source_id, source_path)\"),Z.exec(\"CREATE INDEX IF NOT EXISTS idx_entity_attributes_source ON entity_attributes(agent_id, source_id, source_path)\"),Z.exec(\"CREATE INDEX IF NOT EXISTS idx_entity_dependencies_source_origin ON entity_dependencies(agent_id, source_id, source_path)\")}function x9(Z,Q){return Z.prepare(\"SELECT name FROM sqlite_master WHERE type='table' AND name = ?\").get(Q)?.name===Q}function g9(Z,Q,G){return Z.prepare(`PRAGMA table_info(${Q})`).all().some((O)=>O.name===G)}function v9(Z){if(!x9(Z,\"embeddings\"))return;if(!g9(Z,\"embeddings\",\"agent_id\"))Z.exec(\"ALTER TABLE embeddings ADD COLUMN agent_id TEXT\");Z.exec(\"CREATE INDEX IF NOT EXISTS idx_embeddings_agent_source ON embeddings(agent_id, source_type, source_id)\")}function b9(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS memory_search_telemetry (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\troute TEXT NOT NULL,\n\t\t\tagent_id TEXT NOT NULL,\n\t\t\tsession_key TEXT,\n\t\t\tproject TEXT,\n\t\t\tquery TEXT NOT NULL,\n\t\t\tkeyword_query TEXT,\n\t\t\tfilters_json TEXT NOT NULL,\n\t\t\tmethod TEXT NOT NULL,\n\t\t\tresult_count INTEGER NOT NULL,\n\t\t\ttop_score REAL,\n\t\t\tno_hits INTEGER NOT NULL DEFAULT 0,\n\t\t\tduration_ms REAL NOT NULL DEFAULT 0,\n\t\t\ttimings_json TEXT NOT NULL,\n\t\t\tresults_json TEXT NOT NULL,\n\t\t\tsources_json TEXT\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_memory_search_telemetry_agent_time\n\t\t\tON memory_search_telemetry(agent_id, created_at DESC);\n\t\tCREATE INDEX IF NOT EXISTS idx_memory_search_telemetry_session\n\t\t\tON memory_search_telemetry(session_key) WHERE session_key IS NOT NULL;\n\t\tCREATE INDEX IF NOT EXISTS idx_memory_search_telemetry_route_time\n\t\t\tON memory_search_telemetry(route, created_at DESC);\n\t\tCREATE INDEX IF NOT EXISTS idx_memory_search_telemetry_no_hits\n\t\t\tON memory_search_telemetry(no_hits, created_at DESC);\n\t`)}function h9(Z,Q,G){return Z.prepare(`PRAGMA table_info(${Q})`).all().some((O)=>O.name===G)}function NZ(Z,Q,G,B){if(!h9(Z,Q,G))Z.exec(`ALTER TABLE ${Q} ADD COLUMN ${G} ${B}`)}function m9(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS ontology_proposals (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\toperation TEXT NOT NULL,\n\t\t\tstatus TEXT NOT NULL DEFAULT 'pending'\n\t\t\t\tCHECK (status IN ('pending', 'applied', 'rejected', 'failed')),\n\t\t\tpayload TEXT NOT NULL,\n\t\t\tconfidence REAL NOT NULL DEFAULT 0.0\n\t\t\t\tCHECK (confidence >= 0.0 AND confidence <= 1.0),\n\t\t\trationale TEXT NOT NULL DEFAULT '',\n\t\t\tevidence TEXT NOT NULL DEFAULT '[]',\n\t\t\trisk TEXT,\n\t\t\tsource_kind TEXT,\n\t\t\tsource_id TEXT,\n\t\t\tsource_path TEXT,\n\t\t\tsource_root TEXT,\n\t\t\tcreated_by TEXT NOT NULL DEFAULT 'ontology-proposal',\n\t\t\tapplied_by TEXT,\n\t\t\trejected_by TEXT,\n\t\t\tresult TEXT,\n\t\t\tcreated_at TEXT NOT NULL DEFAULT (datetime('now')),\n\t\t\tupdated_at TEXT NOT NULL DEFAULT (datetime('now')),\n\t\t\tapplied_at TEXT,\n\t\t\trejected_at TEXT\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_ontology_proposals_agent_status\n\t\t\tON ontology_proposals(agent_id, status, updated_at DESC);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_ontology_proposals_agent_operation\n\t\t\tON ontology_proposals(agent_id, operation, updated_at DESC);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_ontology_proposals_source\n\t\t\tON ontology_proposals(agent_id, source_kind, source_id);\n\t`);for(let Q of[\"entity_attributes\",\"entity_dependencies\"])NZ(Z,Q,\"proposal_id\",\"TEXT\"),NZ(Z,Q,\"proposal_evidence\",\"TEXT NOT NULL DEFAULT '[]'\"),Z.exec(`CREATE INDEX IF NOT EXISTS idx_${Q}_proposal ON ${Q}(agent_id, proposal_id)`)}function u9(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS daily_reflections (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tdate TEXT NOT NULL,\n\t\t\tsummary TEXT NOT NULL DEFAULT '',\n\t\t\tpatterns TEXT NOT NULL DEFAULT '[]',\n\t\t\tquestion TEXT,\n\t\t\tanswer TEXT,\n\t\t\tanswer_memory_id TEXT,\n\t\t\tcontent_key TEXT,\n\t\t\tmemory_ids TEXT NOT NULL DEFAULT '[]',\n\t\t\tsummary_ids TEXT NOT NULL DEFAULT '[]',\n\t\t\tmodel TEXT,\n\t\t\tcreated_at TEXT NOT NULL DEFAULT (datetime('now')),\n\t\t\tanswered_at TEXT\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_daily_reflections_agent_date\n\t\t\tON daily_reflections(agent_id, date, created_at DESC);\n\n\t\tCREATE UNIQUE INDEX IF NOT EXISTS idx_daily_reflections_agent_content_key\n\t\t\tON daily_reflections(agent_id, date, content_key)\n\t\t\tWHERE content_key IS NOT NULL;\n\t`)}function p9(Z){let Q=Z.prepare(\"PRAGMA table_info(daily_reflections)\").all();if(!new Set(Q.flatMap((B)=>typeof B.name===\"string\"?[B.name]:[])).has(\"content_key\"))Z.exec(\"ALTER TABLE daily_reflections ADD COLUMN content_key TEXT\");Z.exec(`\n\t\tDROP INDEX IF EXISTS idx_daily_reflections_agent_date;\n\t\tDROP INDEX IF EXISTS idx_daily_reflections_agent_content_key;\n\n\t\tCREATE INDEX IF NOT EXISTS idx_daily_reflections_agent_created\n\t\t\tON daily_reflections(agent_id, created_at DESC);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_daily_reflections_agent_date\n\t\t\tON daily_reflections(agent_id, date, created_at DESC);\n\n\t\tCREATE UNIQUE INDEX IF NOT EXISTS idx_daily_reflections_agent_content_key\n\t\t\tON daily_reflections(agent_id, date, content_key)\n\t\t\tWHERE content_key IS NOT NULL;\n\t`)}function d9(Z,Q,G){return Z.prepare(`PRAGMA table_info(${Q})`).all().some((O)=>O.name===G)}function d(Z,Q,G,B){if(!d9(Z,Q,G))Z.exec(`ALTER TABLE ${Q} ADD COLUMN ${G} ${B}`)}function l9(Z){Z.exec(`\n\t\tUPDATE entity_attributes\n\t\tSET version_root_id = id\n\t\tWHERE version_root_id IS NULL\n\t`)}function c9(Z){for(let Q of[\"entities\",\"entity_aspects\",\"entity_dependencies\"])d(Z,Q,\"status\",\"TEXT NOT NULL DEFAULT 'active'\"),d(Z,Q,\"archived_at\",\"TEXT\"),d(Z,Q,\"archived_by\",\"TEXT\"),d(Z,Q,\"archive_reason\",\"TEXT\");for(let Q of[\"entities\",\"entity_aspects\"])d(Z,Q,\"proposal_id\",\"TEXT\"),d(Z,Q,\"proposal_evidence\",\"TEXT NOT NULL DEFAULT '[]'\");d(Z,\"entity_attributes\",\"version\",\"INTEGER NOT NULL DEFAULT 1\"),d(Z,\"entity_attributes\",\"version_root_id\",\"TEXT\"),d(Z,\"entity_attributes\",\"previous_attribute_id\",\"TEXT\"),d(Z,\"entity_attributes\",\"archived_at\",\"TEXT\"),d(Z,\"entity_attributes\",\"archived_by\",\"TEXT\"),d(Z,\"entity_attributes\",\"archive_reason\",\"TEXT\"),l9(Z),Z.exec(`\n\t\tCREATE INDEX IF NOT EXISTS idx_entities_status\n\t\t\tON entities(agent_id, status, updated_at DESC);\n\t\tCREATE INDEX IF NOT EXISTS idx_entity_aspects_status\n\t\t\tON entity_aspects(agent_id, entity_id, status);\n\t\tCREATE INDEX IF NOT EXISTS idx_entity_attributes_version_root\n\t\t\tON entity_attributes(agent_id, version_root_id, version DESC);\n\t\tCREATE INDEX IF NOT EXISTS idx_entity_attributes_claim_version\n\t\t\tON entity_attributes(agent_id, aspect_id, group_key, claim_key, version DESC);\n\t\tCREATE INDEX IF NOT EXISTS idx_entity_dependencies_status\n\t\t\tON entity_dependencies(agent_id, status, updated_at DESC);\n\t\tCREATE INDEX IF NOT EXISTS idx_entities_proposal\n\t\t\tON entities(agent_id, proposal_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_entity_aspects_proposal\n\t\t\tON entity_aspects(agent_id, proposal_id);\n\t`)}function i9(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS epistemic_assertions (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tsubject_entity_id TEXT NOT NULL REFERENCES entities(id) ON DELETE CASCADE,\n\t\t\tclaim_attribute_id TEXT REFERENCES entity_attributes(id) ON DELETE SET NULL,\n\t\t\tpredicate TEXT NOT NULL CHECK (\n\t\t\t\tpredicate IN ('claims', 'believes', 'observed', 'decided', 'prefers', 'denies', 'questions')\n\t\t\t),\n\t\t\tcontent TEXT NOT NULL,\n\t\t\tnormalized_content TEXT NOT NULL,\n\t\t\tspeaker TEXT,\n\t\t\tasserted_at TEXT NOT NULL,\n\t\t\tconfidence REAL NOT NULL DEFAULT 0.0 CHECK (confidence >= 0.0 AND confidence <= 1.0),\n\t\t\tevidence TEXT NOT NULL DEFAULT '[]',\n\t\t\tsource_kind TEXT,\n\t\t\tsource_id TEXT,\n\t\t\tsource_path TEXT,\n\t\t\tsource_root TEXT,\n\t\t\tstatus TEXT NOT NULL DEFAULT 'active' CHECK (status IN ('active', 'archived', 'superseded')),\n\t\t\tsupersedes_assertion_id TEXT REFERENCES epistemic_assertions(id) ON DELETE SET NULL,\n\t\t\tarchived_at TEXT,\n\t\t\tarchived_by TEXT,\n\t\t\tarchive_reason TEXT,\n\t\t\tcreated_by TEXT NOT NULL DEFAULT 'operator',\n\t\t\tcreated_at TEXT NOT NULL DEFAULT (datetime('now')),\n\t\t\tupdated_at TEXT NOT NULL DEFAULT (datetime('now'))\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_epistemic_assertions_agent_entity\n\t\t\tON epistemic_assertions(agent_id, subject_entity_id, status, asserted_at DESC);\n\t\tCREATE INDEX IF NOT EXISTS idx_epistemic_assertions_agent_speaker\n\t\t\tON epistemic_assertions(agent_id, speaker, asserted_at DESC);\n\t\tCREATE INDEX IF NOT EXISTS idx_epistemic_assertions_agent_predicate\n\t\t\tON epistemic_assertions(agent_id, predicate, status, asserted_at DESC);\n\t\tCREATE INDEX IF NOT EXISTS idx_epistemic_assertions_agent_source\n\t\t\tON epistemic_assertions(agent_id, source_kind, source_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_epistemic_assertions_claim\n\t\t\tON epistemic_assertions(agent_id, claim_attribute_id);\n\t`)}function n9(Z){let Q=Z.prepare(\"PRAGMA table_info(memories)\").all(),G=new Set(Q.map((B)=>B.name).filter((B)=>typeof B===\"string\"));if(!G.has(\"agent_id\"))Z.exec(\"ALTER TABLE memories ADD COLUMN agent_id TEXT DEFAULT 'default'\");if(!G.has(\"visibility\"))Z.exec(\"ALTER TABLE memories ADD COLUMN visibility TEXT DEFAULT 'global'\");if(!G.has(\"scope\"))Z.exec(\"ALTER TABLE memories ADD COLUMN scope TEXT\");if(!G.has(\"idempotency_key\"))Z.exec(\"ALTER TABLE memories ADD COLUMN idempotency_key TEXT\");if(!G.has(\"runtime_path\"))Z.exec(\"ALTER TABLE memories ADD COLUMN runtime_path TEXT\")}function s9(Z){n9(Z),Z.exec(\"DROP INDEX IF EXISTS idx_memories_idempotency_key\"),Z.exec(`\n\t\tCREATE UNIQUE INDEX idx_memories_idempotency_key\n\t\tON memories(\n\t\t\tidempotency_key,\n\t\t\tCOALESCE(NULLIF(agent_id, ''), 'default'),\n\t\t\tCOALESCE(visibility, 'global'),\n\t\t\tCOALESCE(scope, '__NULL__')\n\t\t)\n\t\tWHERE idempotency_key IS NOT NULL AND is_deleted = 0\n\t`)}function a9(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS session_context_epochs (\n\t\t\tsession_key TEXT NOT NULL,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tcontext_epoch INTEGER NOT NULL DEFAULT 0,\n\t\t\treason TEXT NOT NULL,\n\t\t\tsource_ref TEXT,\n\t\t\tcreated_at TEXT NOT NULL DEFAULT (datetime('now')),\n\t\t\tPRIMARY KEY (session_key, agent_id, context_epoch)\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_session_context_epochs_created\n\t\t\tON session_context_epochs(agent_id, created_at DESC);\n\n\t\tCREATE TABLE IF NOT EXISTS session_recall_events (\n\t\t\tsession_key TEXT NOT NULL,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tcontext_epoch INTEGER NOT NULL DEFAULT 0,\n\t\t\titem_kind TEXT NOT NULL,\n\t\t\titem_id TEXT NOT NULL,\n\t\t\tsurface TEXT NOT NULL,\n\t\t\tmode TEXT NOT NULL,\n\t\t\tscore REAL,\n\t\t\tsource TEXT,\n\t\t\tcreated_at TEXT NOT NULL DEFAULT (datetime('now')),\n\t\t\tPRIMARY KEY (session_key, agent_id, context_epoch, item_kind, item_id)\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_session_recall_events_session\n\t\t\tON session_recall_events(session_key, agent_id, context_epoch, created_at DESC);\n\t\tCREATE INDEX IF NOT EXISTS idx_session_recall_events_item\n\t\t\tON session_recall_events(item_kind, item_id, created_at DESC);\n\t`)}function r9(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS aggregate_memory_sources (\n\t\t\taggregate_memory_id TEXT NOT NULL,\n\t\t\tsource_memory_id TEXT NOT NULL,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tPRIMARY KEY (aggregate_memory_id, source_memory_id)\n\t\t);\n\t\tCREATE INDEX IF NOT EXISTS idx_aggregate_memory_sources_agent\n\t\t\tON aggregate_memory_sources(agent_id, aggregate_memory_id);\n\t`)}function Y0(Z,Q,G,B){if(Z.prepare(`PRAGMA table_info(${Q})`).all().some((_)=>_.name===G))return;Z.exec(`ALTER TABLE ${Q} ADD COLUMN ${G} ${B}`)}function o9(Z){Y0(Z,\"memory_artifacts\",\"source_id\",\"TEXT\"),Y0(Z,\"memory_artifacts\",\"source_root\",\"TEXT\"),Y0(Z,\"memory_artifacts\",\"source_external_id\",\"TEXT\"),Y0(Z,\"memory_artifacts\",\"source_parent_path\",\"TEXT\"),Y0(Z,\"memory_artifacts\",\"source_meta_json\",\"TEXT\"),Z.exec(`\n\t\tCREATE INDEX IF NOT EXISTS idx_memory_artifacts_agent_source\n\t\t\tON memory_artifacts(agent_id, source_id, source_external_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_memory_artifacts_agent_source_root\n\t\t\tON memory_artifacts(agent_id, source_id, source_root);\n\t`)}function t9(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS temporal_edges (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tsubject_type TEXT NOT NULL,\n\t\t\tsubject_id TEXT NOT NULL,\n\t\t\tfacet TEXT NOT NULL CHECK(facet IN ('captured', 'session', 'source', 'observed', 'occurred', 'valid')),\n\t\t\tstart_at TEXT NOT NULL,\n\t\t\tend_at TEXT,\n\t\t\tconfidence REAL NOT NULL DEFAULT 1.0,\n\t\t\tprovenance_json TEXT,\n\t\t\tmetadata_json TEXT,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tupdated_at TEXT NOT NULL\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_temporal_edges_agent_facet_range\n\t\t\tON temporal_edges(agent_id, facet, start_at, end_at);\n\t\tCREATE INDEX IF NOT EXISTS idx_temporal_edges_agent_subject\n\t\t\tON temporal_edges(agent_id, subject_type, subject_id);\n\t`)}function e9(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS entity_aliases (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tentity_id TEXT NOT NULL REFERENCES entities(id) ON DELETE CASCADE,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\talias TEXT NOT NULL,\n\t\t\tcanonical_alias TEXT NOT NULL,\n\t\t\tconfidence REAL NOT NULL DEFAULT 1.0,\n\t\t\tsource TEXT,\n\t\t\tstatus TEXT NOT NULL DEFAULT 'active',\n\t\t\tcreated_at TEXT NOT NULL DEFAULT (datetime('now')),\n\t\t\tupdated_at TEXT NOT NULL DEFAULT (datetime('now'))\n\t\t);\n\n\t\tCREATE UNIQUE INDEX IF NOT EXISTS idx_entity_aliases_active_unique\n\t\t\tON entity_aliases(agent_id, canonical_alias)\n\t\t\tWHERE status = 'active';\n\t\tCREATE INDEX IF NOT EXISTS idx_entity_aliases_entity\n\t\t\tON entity_aliases(agent_id, entity_id, status);\n\t\tCREATE INDEX IF NOT EXISTS idx_entity_aliases_lookup\n\t\t\tON entity_aliases(agent_id, canonical_alias, status);\n\t`)}function Z5(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS api_keys (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tprefix TEXT NOT NULL UNIQUE,\n\t\t\tname TEXT NOT NULL,\n\t\t\tkey_hash TEXT NOT NULL,\n\t\t\trole TEXT NOT NULL DEFAULT 'agent',\n\t\t\tscope_json TEXT NOT NULL DEFAULT '{}',\n\t\t\tpermissions_json TEXT NOT NULL DEFAULT '[]',\n\t\t\tconnector TEXT,\n\t\t\tharness TEXT,\n\t\t\tagent_id TEXT,\n\t\t\tallowed_projects_json TEXT,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tlast_used_at TEXT,\n\t\t\trevoked_at TEXT,\n\t\t\texpires_at TEXT\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_api_keys_prefix\n\t\t\tON api_keys(prefix);\n\t\tCREATE INDEX IF NOT EXISTS idx_api_keys_active\n\t\t\tON api_keys(revoked_at, expires_at);\n\t\tCREATE INDEX IF NOT EXISTS idx_api_keys_connector\n\t\t\tON api_keys(connector, harness);\n\t`)}function z6(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS transcript_capture_jobs (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tharness TEXT NOT NULL,\n\t\t\tsession_key TEXT,\n\t\t\tsession_id TEXT NOT NULL,\n\t\t\tproject TEXT,\n\t\t\ttranscript TEXT NOT NULL,\n\t\t\traw_transcript TEXT,\n\t\t\ttranscript_path TEXT,\n\t\t\tcaptured_at TEXT NOT NULL,\n\t\t\tended_at TEXT,\n\t\t\tsummary_status TEXT NOT NULL DEFAULT 'not_requested',\n\t\t\tstatus TEXT NOT NULL DEFAULT 'pending',\n\t\t\tattempts INTEGER NOT NULL DEFAULT 0,\n\t\t\tmax_attempts INTEGER NOT NULL DEFAULT 5,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tupdated_at TEXT NOT NULL,\n\t\t\tcompleted_at TEXT,\n\t\t\terror TEXT\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_transcript_capture_jobs_status\n\t\t\tON transcript_capture_jobs(status, created_at);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_transcript_capture_jobs_agent_session\n\t\t\tON transcript_capture_jobs(agent_id, session_key, created_at);\n\t`)}function i(Z,Q,G){return Z.prepare(`PRAGMA table_info(${Q})`).all().some((O)=>O.name===G)}function Q6(Z){if(!i(Z,\"documents\",\"agent_id\"))Z.exec(\"ALTER TABLE documents ADD COLUMN agent_id TEXT NOT NULL DEFAULT 'default'\");if(!i(Z,\"documents\",\"project\"))Z.exec(\"ALTER TABLE documents ADD COLUMN project TEXT\");if(Z.exec(`\n\t\tUPDATE documents\n\t\tSET agent_id = NULLIF(TRIM(json_extract(metadata_json, '$.signet.agentId')), '')\n\t\tWHERE metadata_json IS NOT NULL\n\t\t AND json_valid(metadata_json)\n\t\t AND json_type(metadata_json, '$.signet.agentId') = 'text'\n\t\t AND NULLIF(TRIM(json_extract(metadata_json, '$.signet.agentId')), '') IS NOT NULL\n\t`),Z.exec(`\n\t\tUPDATE documents\n\t\tSET project = NULLIF(TRIM(json_extract(metadata_json, '$.signet.project')), '')\n\t\tWHERE metadata_json IS NOT NULL\n\t\t AND json_valid(metadata_json)\n\t\t AND json_type(metadata_json, '$.signet.project') = 'text'\n\t`),Z.exec(`\n\t\tWITH linked_scope AS (\n\t\t\tSELECT\n\t\t\t\tdm.document_id,\n\t\t\t\tm.agent_id,\n\t\t\t\tm.project,\n\t\t\t\tROW_NUMBER() OVER (\n\t\t\t\t\tPARTITION BY dm.document_id\n\t\t\t\t\tORDER BY COUNT(*) DESC, m.agent_id, COALESCE(m.project, '')\n\t\t\t\t) AS rank\n\t\t\tFROM document_memories dm\n\t\t\tJOIN memories m ON m.id = dm.memory_id\n\t\t\tWHERE m.agent_id IS NOT NULL\n\t\t\t AND NULLIF(TRIM(m.agent_id), '') IS NOT NULL\n\t\t\tGROUP BY dm.document_id, m.agent_id, m.project\n\t\t)\n\t\tUPDATE documents\n\t\tSET\n\t\t\tagent_id = COALESCE((\n\t\t\t\tSELECT agent_id FROM linked_scope\n\t\t\t\tWHERE linked_scope.document_id = documents.id AND rank = 1\n\t\t\t), agent_id),\n\t\t\tproject = (\n\t\t\t\tSELECT project FROM linked_scope\n\t\t\t\tWHERE linked_scope.document_id = documents.id AND rank = 1\n\t\t\t)\n\t\tWHERE EXISTS (\n\t\t\tSELECT 1 FROM linked_scope\n\t\t\tWHERE linked_scope.document_id = documents.id AND rank = 1\n\t\t)\n\t\tAND NOT (\n\t\t\tmetadata_json IS NOT NULL\n\t\t\tAND json_valid(metadata_json)\n\t\t\tAND json_type(metadata_json, '$.signet.agentId') = 'text'\n\t\t\tAND NULLIF(TRIM(json_extract(metadata_json, '$.signet.agentId')), '') IS NOT NULL\n\t\t)\n\t`),i(Z,\"memories\",\"visibility\")&&i(Z,\"memories\",\"type\")&&i(Z,\"memories\",\"source_type\"))Z.exec(`\n\t\t\tUPDATE memories\n\t\t\tSET visibility = 'private'\n\t\t\tWHERE id IN (SELECT memory_id FROM document_memories)\n\t\t\t AND type = 'document_chunk'\n\t\t\t AND source_type = 'document'\n\t\t\t AND (visibility IS NULL OR visibility = 'global')\n\t\t`);if(i(Z,\"memories\",\"content_hash\")&&i(Z,\"memories\",\"agent_id\")&&i(Z,\"memories\",\"project\")&&i(Z,\"memories\",\"scope\")&&i(Z,\"memories\",\"visibility\")&&i(Z,\"memories\",\"is_deleted\"))Z.exec(\"DROP INDEX IF EXISTS idx_memories_content_hash_unique\"),Z.exec(`\n\t\t\tCREATE UNIQUE INDEX idx_memories_content_hash_unique\n\t\t\tON memories(\n\t\t\t\tcontent_hash,\n\t\t\t\tCOALESCE(NULLIF(agent_id, ''), 'default'),\n\t\t\t\tCOALESCE(project, ''),\n\t\t\t\tCOALESCE(scope, '__NULL__'),\n\t\t\t\tCOALESCE(visibility, 'global')\n\t\t\t)\n\t\t\tWHERE content_hash IS NOT NULL AND is_deleted = 0\n\t\t`);Z.exec(\"CREATE INDEX IF NOT EXISTS idx_documents_agent_project ON documents(agent_id, project)\"),Z.exec(\"CREATE INDEX IF NOT EXISTS idx_documents_source_scope ON documents(source_url, agent_id, project)\")}function J6(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS aggregate_evidence_sources (\n\t\t\taggregate_memory_id TEXT NOT NULL,\n\t\t\tsource_kind TEXT NOT NULL,\n\t\t\tsource_id TEXT NOT NULL,\n\t\t\tsource_path TEXT,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tPRIMARY KEY (aggregate_memory_id, source_kind, source_id)\n\t\t);\n\t\tCREATE INDEX IF NOT EXISTS idx_aggregate_evidence_sources_agent\n\t\t\tON aggregate_evidence_sources(agent_id, aggregate_memory_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_aggregate_evidence_sources_source\n\t\t\tON aggregate_evidence_sources(source_kind, source_id);\n\t`)}function X5(Z,Q,G){return Z.prepare(`PRAGMA table_info(${Q})`).all().some((O)=>O.name===G)}var $5=[\"harness\",\"session_id\",\"tool_use_id\",\"cwd\",\"origin\",\"args\"];function z5(Z){for(let Q of $5)if(!X5(Z,\"skill_invocations\",Q))Z.exec(`ALTER TABLE skill_invocations ADD COLUMN ${Q} TEXT`);Z.exec(\"DROP INDEX IF EXISTS idx_skill_inv_dedupe\"),Z.exec(`\n\t\tCREATE UNIQUE INDEX idx_skill_inv_dedupe\n\t\tON skill_invocations(agent_id, harness, session_id, tool_use_id)\n\t\tWHERE harness IS NOT NULL AND session_id IS NOT NULL AND tool_use_id IS NOT NULL\n\t`),Z.exec(\"CREATE INDEX IF NOT EXISTS idx_skill_inv_harness ON skill_invocations(harness, created_at)\")}var Q5=new Set([\"uses\",\"requires\",\"owned_by\",\"owns\",\"blocks\",\"informs\",\"maintains\",\"implements\",\"built\",\"depends_on\",\"related_to\",\"learned_from\",\"teaches\",\"knows\",\"assumes\",\"supports_claim\",\"authored_by\",\"links_to\",\"contains\",\"contains_note\",\"contradicts\",\"supersedes\",\"part_of\",\"produced_artifact\",\"precedes\",\"follows\",\"triggers\",\"may_execute\",\"requires_approval_from\",\"impacts\",\"produces\",\"consumes\"]);function J5(Z){return[...Z].map((Q)=>`'${Q}'`).join(\", \")}function r0(Z,Q){return Boolean(Z.prepare(\"SELECT name FROM sqlite_master WHERE type = 'table' AND name = ?\").get(Q))}function e(Z,Q,G){return Z.prepare(`PRAGMA table_info(${Q})`).all().some((O)=>O.name===G)}function a(Z,Q,G,B){if(!e(Z,Q,G))Z.exec(`ALTER TABLE ${Q} ADD COLUMN ${G} ${B}`)}function G5(Z){let Q=e(Z,\"documents\",\"agent_id\"),G=e(Z,\"documents\",\"project\");if(Q)Z.exec(`\n\t\t\tCREATE TEMP TABLE __signet_doc_agent_guard AS\n\t\t\tSELECT id, agent_id FROM documents\n\t\t\tWHERE NULLIF(TRIM(agent_id), '') IS NOT NULL\n\t\t\t AND NULLIF(TRIM(agent_id), '') <> 'default'\n\t\t`);if(G)Z.exec(`\n\t\t\tCREATE TEMP TABLE __signet_doc_project_guard AS\n\t\t\tSELECT id, project FROM documents\n\t\t\tWHERE NULLIF(TRIM(project), '') IS NOT NULL\n\t\t`);try{if(Q6(Z),Q)Z.exec(`\n\t\t\t\tUPDATE documents\n\t\t\t\tSET agent_id = (SELECT agent_id FROM __signet_doc_agent_guard WHERE __signet_doc_agent_guard.id = documents.id)\n\t\t\t\tWHERE EXISTS (SELECT 1 FROM __signet_doc_agent_guard WHERE __signet_doc_agent_guard.id = documents.id)\n\t\t\t`);if(G)Z.exec(`\n\t\t\t\tUPDATE documents\n\t\t\t\tSET project = (SELECT project FROM __signet_doc_project_guard WHERE __signet_doc_project_guard.id = documents.id)\n\t\t\t\tWHERE EXISTS (SELECT 1 FROM __signet_doc_project_guard WHERE __signet_doc_project_guard.id = documents.id)\n\t\t\t`)}finally{Z.exec(\"DROP TABLE IF EXISTS temp.__signet_doc_agent_guard\"),Z.exec(\"DROP TABLE IF EXISTS temp.__signet_doc_project_guard\")}}function W5(Z){if(z6(Z),r0(Z,\"documents\"))G5(Z);if(J6(Z),a(Z,\"memories\",\"superseded_by\",\"TEXT\"),a(Z,\"memories\",\"superseded_at\",\"TEXT\"),a(Z,\"memories\",\"superseded_reason\",\"TEXT\"),Z.exec(\"CREATE INDEX IF NOT EXISTS idx_memories_superseded_by ON memories(superseded_by)\"),Z.exec(\"CREATE INDEX IF NOT EXISTS idx_memories_active_supersession ON memories(is_deleted, superseded_by)\"),!r0(Z,\"relations\")||!r0(Z,\"entity_dependencies\"))return;a(Z,\"entity_dependencies\",\"confidence\",\"REAL\"),a(Z,\"entity_dependencies\",\"reason\",\"TEXT\"),a(Z,\"entity_dependencies\",\"source_id\",\"TEXT\"),a(Z,\"entity_dependencies\",\"source_kind\",\"TEXT\"),a(Z,\"entity_dependencies\",\"proposal_evidence\",\"TEXT NOT NULL DEFAULT '[]'\"),a(Z,\"entity_dependencies\",\"status\",\"TEXT NOT NULL DEFAULT 'active'\");let Q=e(Z,\"relations\",\"confidence\")?\"r.confidence\":\"NULL\",G=e(Z,\"relations\",\"updated_at\")?\"r.updated_at\":\"r.created_at\",B=e(Z,\"entities\",\"agent_id\")?\"COALESCE(NULLIF(TRIM(src.agent_id), ''), 'default')\":\"'default'\",O=e(Z,\"entities\",\"agent_id\")?\"COALESCE(NULLIF(TRIM(dst.agent_id), ''), 'default')\":\"'default'\";Z.exec(`\n\t\tINSERT OR IGNORE INTO entity_dependencies (\n\t\t\tid,\n\t\t\tsource_entity_id,\n\t\t\ttarget_entity_id,\n\t\t\tagent_id,\n\t\t\tdependency_type,\n\t\t\tstrength,\n\t\t\tconfidence,\n\t\t\treason,\n\t\t\tcreated_at,\n\t\t\tupdated_at,\n\t\t\tsource_id,\n\t\t\tsource_kind,\n\t\t\tproposal_evidence,\n\t\t\tstatus\n\t\t)\n\t\tSELECT\n\t\t\t'relation:' || r.id,\n\t\t\tr.source_entity_id,\n\t\t\tr.target_entity_id,\n\t\t\tCOALESCE(${B}, ${O}, 'default'),\n\t\t\tCASE WHEN r.relation_type IN (${J5(Q5)}) THEN r.relation_type ELSE 'related_to' END,\n\t\t\tMAX(0.1, MIN(1.0, COALESCE(r.strength, 0.5))),\n\t\t\tMAX(0.1, MIN(1.0, COALESCE(${Q}, 0.7))),\n\t\t\t'legacy relation backfill: ' || r.relation_type,\n\t\t\tCOALESCE(r.created_at, datetime('now')),\n\t\t\tCOALESCE(${G}, r.created_at, datetime('now')),\n\t\t\tr.id,\n\t\t\t'relation',\n\t\t\t'[]',\n\t\t\t'active'\n\t\tFROM relations r\n\t\tJOIN entities src ON src.id = r.source_entity_id\n\t\tJOIN entities dst ON dst.id = r.target_entity_id\n\t\tWHERE r.source_entity_id <> r.target_entity_id\n\t\t AND ${B} = ${O}\n\t`)}function V5(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS legacy_markdown_imports (\n\t\t\tpath TEXT PRIMARY KEY,\n\t\t\tmtime_ms INTEGER NOT NULL,\n\t\t\tctime_ms INTEGER NOT NULL,\n\t\t\tsize INTEGER NOT NULL,\n\t\t\tcontent_hash TEXT NOT NULL,\n\t\t\timporter_version INTEGER NOT NULL,\n\t\t\tchunk_count INTEGER NOT NULL DEFAULT 0,\n\t\t\tlast_imported_at TEXT NOT NULL,\n\t\t\tlast_seen_at TEXT NOT NULL,\n\t\t\tstatus TEXT NOT NULL DEFAULT 'imported',\n\t\t\terror TEXT\n\t\t);\n\n\t\tCREATE TABLE IF NOT EXISTS legacy_markdown_chunks (\n\t\t\tfile_path TEXT NOT NULL,\n\t\t\tchunk_hash TEXT NOT NULL,\n\t\t\tchunk_index INTEGER NOT NULL,\n\t\t\tmemory_id TEXT,\n\t\t\tsource_id TEXT,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tPRIMARY KEY (file_path, chunk_hash)\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_legacy_markdown_chunks_memory_id\n\t\t\tON legacy_markdown_chunks(memory_id);\n\t`)}function H5(Z){let Q=Z.prepare(\"SELECT name FROM sqlite_master WHERE type='table' AND name IN ('relations', 'entity_dependencies')\").all(),G=new Set(Q.map((F)=>String(F.name)));if(!G.has(\"relations\")||!G.has(\"entity_dependencies\"))return;let B=Z.prepare(\"PRAGMA table_info(relations)\").all(),O=Z.prepare(\"PRAGMA table_info(entity_dependencies)\").all(),_=new Set(B.map((F)=>String(F.name))),Y=new Set(O.map((F)=>String(F.name)));if(!_.has(\"source_entity_id\")||!_.has(\"relation_type\"))return;if(!Y.has(\"source_entity_id\")||!Y.has(\"dependency_type\")||!Y.has(\"agent_id\"))return;let U=_.has(\"confidence\"),H=_.has(\"updated_at\"),z=Y.has(\"confidence\"),V=Y.has(\"reason\"),X=Y.has(\"status\"),$=[\"id\",\"source_entity_id\",\"target_entity_id\"],J=[\"id\",\"source_entity_id\",\"target_entity_id\"];if($.push(\"relation_type\"),J.push(\"dependency_type\"),$.push(\"strength\",\"created_at\"),J.push(\"strength\",\"created_at\"),$.push(\"'default'\"),J.push(\"agent_id\"),$.push(\"NULL\"),J.push(\"aspect_id\"),U&&z)$.push(\"confidence\"),J.push(\"confidence\");if(V)$.push(\"'extracted'\"),J.push(\"reason\");if(X)$.push(\"'active'\"),J.push(\"status\");if(H&&Y.has(\"updated_at\"))$.push(\"updated_at\"),J.push(\"updated_at\");let W=$.join(\", \"),K=J.join(\", \");Z.exec(`INSERT OR IGNORE INTO entity_dependencies (${K})\n\t\t SELECT ${W}\n\t\t FROM relations\n\t\t WHERE source_entity_id IS NOT NULL\n\t\t AND target_entity_id IS NOT NULL\n\t\t AND relation_type IS NOT NULL`)}function U5(Z,Q,G,B){if(Z.prepare(`PRAGMA table_info(${Q})`).all().some((_)=>_.name===G))return;Z.exec(`ALTER TABLE ${Q} ADD COLUMN ${G} ${B}`)}function Y5(Z){U5(Z,\"summary_jobs\",\"content_hash\",\"TEXT\"),Z.exec(`\n\t\tCREATE INDEX IF NOT EXISTS idx_summary_jobs_agent_session_content_hash\n\t\tON summary_jobs(agent_id, session_key, content_hash)\n\t`)}function B5(Z,Q,G,B){if(Z.prepare(`PRAGMA table_info(${Q})`).all().some((_)=>_.name===G))return;Z.exec(`ALTER TABLE ${Q} ADD COLUMN ${G} ${B}`)}function K5(Z){B5(Z,\"summary_jobs\",\"boundary_reason\",\"TEXT\"),Z.exec(`\n\t\tCREATE INDEX IF NOT EXISTS idx_summary_jobs_boundary_reason\n\t\tON summary_jobs(agent_id, session_key, boundary_reason)\n\t`)}function _5(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS transcript_recovery_files (\n\t\t\tagent_id TEXT NOT NULL,\n\t\t\tsource_path TEXT NOT NULL,\n\t\t\tharness TEXT NOT NULL,\n\t\t\tsize_bytes INTEGER NOT NULL,\n\t\t\tmtime_ms INTEGER NOT NULL,\n\t\t\tcontent_sha256 TEXT NOT NULL,\n\t\t\tsession_id TEXT NOT NULL,\n\t\t\tlast_scanned_at TEXT NOT NULL,\n\t\t\tPRIMARY KEY (agent_id, source_path)\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_transcript_capture_jobs_agent_session_id\n\t\t\tON transcript_capture_jobs(agent_id, session_id, status);\n\t`)}function O5(Z){if(Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS job_cancellations (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tsource_table TEXT NOT NULL,\n\t\t\tsource_id TEXT NOT NULL,\n\t\t\tstatus_before TEXT NOT NULL,\n\t\t\tpayload_json TEXT NOT NULL,\n\t\t\treason TEXT,\n\t\t\tactor TEXT NOT NULL,\n\t\t\tactor_type TEXT NOT NULL,\n\t\t\trequest_id TEXT,\n\t\t\tcreated_at TEXT NOT NULL\n\t\t)\n\t`),!TZ(Z,\"job_cancellations\",\"idx_job_cancellations_source\"))Z.exec(`CREATE INDEX IF NOT EXISTS idx_job_cancellations_source\n\t\t\t ON job_cancellations(source_table, source_id)`);if(!TZ(Z,\"job_cancellations\",\"idx_job_cancellations_created_at\"))Z.exec(`CREATE INDEX IF NOT EXISTS idx_job_cancellations_created_at\n\t\t\t ON job_cancellations(created_at)`)}function TZ(Z,Q,G){return Z.prepare(`PRAGMA index_list(${Q})`).all().some((O)=>O.name===G)}function F5(Z){if(Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS job_archive (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tsource_table TEXT NOT NULL,\n\t\t\tsource_id TEXT NOT NULL,\n\t\t\tstatus TEXT NOT NULL,\n\t\t\tpayload_json TEXT NOT NULL,\n\t\t\tarchived_at TEXT NOT NULL,\n\t\t\tarchived_by TEXT NOT NULL,\n\t\t\treason TEXT,\n\t\t\tcreated_at TEXT NOT NULL\n\t\t)\n\t`),!SZ(Z,\"job_archive\",\"idx_job_archive_source\"))Z.exec(`CREATE INDEX IF NOT EXISTS idx_job_archive_source\n\t\t\t ON job_archive(source_table, source_id)`);if(!SZ(Z,\"job_archive\",\"idx_job_archive_archived_at\"))Z.exec(`CREATE INDEX IF NOT EXISTS idx_job_archive_archived_at\n\t\t\t ON job_archive(archived_at)`)}function SZ(Z,Q,G){return Z.prepare(`PRAGMA index_list(${Q})`).all().some((O)=>O.name===G)}var CZ=[{version:1,name:\"baseline\",up:j8,artifacts:{tables:[\"memories\",\"conversations\",\"embeddings\"]}},{version:2,name:\"pipeline-v2\",up:q8,artifacts:{tables:[\"memory_history\",\"memory_jobs\",\"entities\",\"relations\",\"memory_entity_mentions\"]}},{version:3,name:\"unique-content-hash\",up:L8},{version:4,name:\"history-actor-and-retention\",up:I8,artifacts:{columns:[{table:\"memory_history\",column:\"actor_type\"}]}},{version:5,name:\"graph-extended\",up:D8,artifacts:{columns:[{table:\"entities\",column:\"canonical_name\"}]}},{version:6,name:\"idempotency-key\",up:N8,artifacts:{columns:[{table:\"memories\",column:\"idempotency_key\"}]}},{version:7,name:\"documents-and-connectors\",up:S8,artifacts:{tables:[\"documents\",\"document_memories\",\"connectors\"]}},{version:8,name:\"embeddings-unique-hash\",up:C8},{version:9,name:\"summary-jobs\",up:E8,artifacts:{tables:[\"summary_jobs\"]}},{version:10,name:\"umap-cache\",up:P8,artifacts:{tables:[\"umap_cache\"]}},{version:11,name:\"session-scores\",up:w8,artifacts:{tables:[\"session_scores\"]}},{version:12,name:\"scheduled-tasks\",up:y8,artifacts:{tables:[\"scheduled_tasks\",\"task_runs\"]}},{version:13,name:\"ingestion-tracking\",up:k8,artifacts:{tables:[\"ingestion_jobs\"],columns:[{table:\"memories\",column:\"source_path\"},{table:\"memories\",column:\"source_section\"}]}},{version:14,name:\"telemetry\",up:f8,artifacts:{tables:[\"telemetry_events\"]}},{version:15,name:\"session-memories\",up:x8,artifacts:{tables:[\"session_memories\"],columns:[{table:\"session_scores\",column:\"confidence\"},{table:\"session_scores\",column:\"continuity_reasoning\"}]}},{version:16,name:\"session-checkpoints\",up:g8,artifacts:{tables:[\"session_checkpoints\"]}},{version:17,name:\"task-skills\",up:v8,artifacts:{columns:[{table:\"scheduled_tasks\",column:\"skill_name\"}]}},{version:18,name:\"skill-meta\",up:b8,artifacts:{tables:[\"skill_meta\"]}},{version:19,name:\"knowledge-structure\",up:h8,artifacts:{tables:[\"entity_aspects\",\"entity_attributes\",\"entity_dependencies\",\"task_meta\"],columns:[{table:\"entities\",column:\"agent_id\"}]}},{version:20,name:\"session-structural-columns\",up:m8,artifacts:{columns:[{table:\"session_memories\",column:\"entity_slot\"},{table:\"session_memories\",column:\"aspect_slot\"},{table:\"session_memories\",column:\"is_constraint\"},{table:\"session_memories\",column:\"structural_density\"}]}},{version:21,name:\"checkpoint-structural\",up:u8,artifacts:{columns:[{table:\"session_checkpoints\",column:\"focal_entity_ids\"}]}},{version:22,name:\"entity-pinning\",up:p8,artifacts:{columns:[{table:\"entities\",column:\"pinned\"},{table:\"entities\",column:\"pinned_at\"}]}},{version:23,name:\"retired-scorer-gap\",up:d8},{version:24,name:\"retired-scorer-gap\",up:l8},{version:25,name:\"agent-feedback\",up:c8,artifacts:{columns:[{table:\"session_memories\",column:\"agent_relevance_score\"}]}},{version:26,name:\"retired-scorer-gap\",up:i8},{version:27,name:\"backfill-canonical-names\",up:n8},{version:28,name:\"lossless-retention\",up:s8},{version:29,name:\"session-summary-dag\",up:a8},{version:30,name:\"nullable-memory-job-memory-id\",up:r8},{version:31,name:\"dependency-reason\",up:o8,artifacts:{columns:[{table:\"entity_dependencies\",column:\"reason\"},{table:\"entities\",column:\"last_synthesized_at\"}]}},{version:32,name:\"embeddings-vector-column\",up:t8,artifacts:{columns:[{table:\"embeddings\",column:\"vector\",optional:!0}]}},{version:33,name:\"scope\",up:e8,artifacts:{columns:[{table:\"memories\",column:\"scope\"}]}},{version:34,name:\"scope-aware-dedup\",up:Z9},{version:35,name:\"entity-fts\",up:X9},{version:36,name:\"dependency-confidence\",up:$9,artifacts:{columns:[{table:\"entity_dependencies\",column:\"confidence\"}]}},{version:37,name:\"entity-communities\",up:z9,artifacts:{tables:[\"entity_communities\"],columns:[{table:\"entities\",column:\"community_id\"}]}},{version:38,name:\"memory-hints\",up:Q9,artifacts:{tables:[\"memory_hints\"]}},{version:39,name:\"dedup-entity-dependencies\",up:J9},{version:40,name:\"session-transcripts\",up:G9,artifacts:{tables:[\"session_transcripts\"]}},{version:41,name:\"path-feedback\",up:V9,artifacts:{tables:[\"path_feedback_events\",\"path_feedback_stats\",\"entity_retrieval_stats\",\"entity_cooccurrence\",\"path_feedback_sessions\"],columns:[{table:\"session_memories\",column:\"path_json\"}]}},{version:42,name:\"session-memories-agent-id\",up:H9,artifacts:{columns:[{table:\"session_memories\",column:\"agent_id\"}]}},{version:43,name:\"agents-table\",up:U9,artifacts:{tables:[\"agents\"],columns:[{table:\"memories\",column:\"agent_id\"},{table:\"memories\",column:\"visibility\"}]}},{version:44,name:\"memory-md-temporal-head\",up:Y9,artifacts:{columns:[{table:\"session_summaries\",column:\"source_type\"},{table:\"session_summaries\",column:\"source_ref\"},{table:\"session_summaries\",column:\"meta_json\"}]}},{version:45,name:\"lossless-working-memory-hardening\",up:B9,artifacts:{tables:[\"session_transcripts_fts\",\"memory_md_heads\"],columns:[{table:\"session_transcripts\",column:\"updated_at\"},{table:\"summary_jobs\",column:\"agent_id\"},{table:\"session_scores\",column:\"agent_id\"}]}},{version:46,name:\"session-summary-uniqueness\",up:K9},{version:47,name:\"agent-scoped-temporal-uniqueness\",up:_9},{version:48,name:\"thread-heads\",up:O9,artifacts:{tables:[\"memory_thread_heads\"]}},{version:49,name:\"session-extract-cursors\",up:F9,artifacts:{tables:[\"session_extract_cursors\"]}},{version:50,name:\"related-to-audit\",up:R9,artifacts:{tables:[\"entity_dependency_history\"]}},{version:51,name:\"memory-md-rolling-window-lineage\",up:q9,artifacts:{tables:[\"memory_artifacts\",\"memory_artifact_tombstones\",\"memory_artifacts_fts\"],columns:[{table:\"summary_jobs\",column:\"session_id\"},{table:\"summary_jobs\",column:\"trigger\"},{table:\"summary_jobs\",column:\"captured_at\"},{table:\"summary_jobs\",column:\"started_at\"},{table:\"summary_jobs\",column:\"ended_at\"}]}},{version:52,name:\"mcp-invocations\",up:L9,artifacts:{tables:[\"mcp_invocations\"]}},{version:53,name:\"skill-invocations\",up:A9,artifacts:{tables:[\"skill_invocations\"]}},{version:54,name:\"task-agent-scope\",up:I9,artifacts:{tables:[\"task_scope_hints\"]}},{version:55,name:\"dreaming-state\",up:M9,artifacts:{tables:[\"dreaming_state\",\"dreaming_passes\"]}},{version:56,name:\"agent-scoped-content-hash\",up:N9},{version:57,name:\"memories-fts-tokenizer-repair\",up:T9},{version:58,name:\"knowledge-graph-indices\",up:S9},{version:59,name:\"entity-attribute-claim-key\",up:C9,artifacts:{columns:[{table:\"entity_attributes\",column:\"claim_key\"}]}},{version:60,name:\"entity-attribute-group-key\",up:E9,artifacts:{columns:[{table:\"entity_attributes\",column:\"group_key\"}]}},{version:61,name:\"memory-artifact-source-mtime\",up:P9,artifacts:{columns:[{table:\"memory_artifacts\",column:\"source_mtime_ms\"}]}},{version:62,name:\"memory-artifact-soft-delete\",up:w9,artifacts:{columns:[{table:\"memory_artifacts\",column:\"is_deleted\"},{table:\"memory_artifacts\",column:\"deleted_at\"}]}},{version:63,name:\"content-only-memories-fts-update\",up:y9},{version:64,name:\"source-graph-provenance\",up:f9,artifacts:{columns:[{table:\"entities\",column:\"source_path\"},{table:\"entity_communities\",column:\"source_path\"},{table:\"entity_attributes\",column:\"source_path\"},{table:\"entity_dependencies\",column:\"source_path\"}]}},{version:65,name:\"source-embedding-agent-scope\",up:v9,artifacts:{columns:[{table:\"embeddings\",column:\"agent_id\",optional:!0}]}},{version:66,name:\"memory-search-telemetry\",up:b9,artifacts:{tables:[\"memory_search_telemetry\"]}},{version:67,name:\"ontology-proposals\",up:m9,artifacts:{tables:[\"ontology_proposals\"],columns:[{table:\"entity_attributes\",column:\"proposal_id\"},{table:\"entity_attributes\",column:\"proposal_evidence\"},{table:\"entity_dependencies\",column:\"proposal_id\"},{table:\"entity_dependencies\",column:\"proposal_evidence\"}]}},{version:68,name:\"daily-reflections\",up:u9,artifacts:{tables:[\"daily_reflections\"]}},{version:69,name:\"daily-reflections-multiple-insights\",up:p9,artifacts:{tables:[\"daily_reflections\"]}},{version:70,name:\"ontology-control-plane-state\",up:c9,artifacts:{columns:[{table:\"entities\",column:\"status\"},{table:\"entity_aspects\",column:\"status\"},{table:\"entity_attributes\",column:\"version\"},{table:\"entity_attributes\",column:\"version_root_id\"},{table:\"entity_attributes\",column:\"previous_attribute_id\"},{table:\"entity_dependencies\",column:\"status\"}]}},{version:71,name:\"epistemic-assertions\",up:i9,artifacts:{tables:[\"epistemic_assertions\"]}},{version:72,name:\"agent-scoped-idempotency-key\",up:s9,artifacts:{columns:[{table:\"memories\",column:\"idempotency_key\"},{table:\"memories\",column:\"runtime_path\"}]}},{version:73,name:\"recall-context-dedupe\",up:a9,artifacts:{tables:[\"session_context_epochs\",\"session_recall_events\"]}},{version:74,name:\"aggregate-memory-links\",up:r9,artifacts:{tables:[\"aggregate_memory_sources\"]}},{version:75,name:\"memory-artifact-source-provenance\",up:o9,artifacts:{columns:[{table:\"memory_artifacts\",column:\"source_id\"},{table:\"memory_artifacts\",column:\"source_root\"},{table:\"memory_artifacts\",column:\"source_external_id\"},{table:\"memory_artifacts\",column:\"source_parent_path\"},{table:\"memory_artifacts\",column:\"source_meta_json\"}]}},{version:76,name:\"temporal-edges\",up:t9,artifacts:{tables:[\"temporal_edges\"]}},{version:77,name:\"entity-aliases\",up:e9,artifacts:{tables:[\"entity_aliases\"]}},{version:78,name:\"api-keys\",up:Z5,artifacts:{tables:[\"api_keys\"]}},{version:79,name:\"transcript-capture-jobs\",up:z6,artifacts:{tables:[\"transcript_capture_jobs\"]}},{version:80,name:\"document-scope-columns\",up:Q6,artifacts:{columns:[{table:\"documents\",column:\"agent_id\"},{table:\"documents\",column:\"project\"}]}},{version:81,name:\"aggregate-evidence-sources\",up:J6,artifacts:{tables:[\"aggregate_evidence_sources\"]}},{version:82,name:\"skill-invocations-harness\",up:z5,artifacts:{columns:[{table:\"skill_invocations\",column:\"harness\"},{table:\"skill_invocations\",column:\"tool_use_id\"}]}},{version:83,name:\"memory-lifecycle-repair\",up:W5,artifacts:{tables:[\"transcript_capture_jobs\",\"aggregate_evidence_sources\",\"entity_dependencies\"],columns:[{table:\"documents\",column:\"agent_id\"},{table:\"documents\",column:\"project\"},{table:\"memories\",column:\"superseded_by\"},{table:\"memories\",column:\"superseded_at\"},{table:\"memories\",column:\"superseded_reason\"}]}},{version:84,name:\"legacy-markdown-import-state\",up:V5,artifacts:{tables:[\"legacy_markdown_imports\",\"legacy_markdown_chunks\"]}},{version:85,name:\"backfill-relations-to-dependencies\",up:H5,artifacts:{tables:[\"entity_dependencies\"]}},{version:86,name:\"summary-jobs-content-hash\",up:Y5,artifacts:{columns:[{table:\"summary_jobs\",column:\"content_hash\"}]}},{version:87,name:\"summary-jobs-boundary-reason\",up:K5,artifacts:{columns:[{table:\"summary_jobs\",column:\"boundary_reason\"}]}},{version:88,name:\"transcript-recovery-files\",up:_5,artifacts:{tables:[\"transcript_recovery_files\"]}},{version:89,name:\"job-cancellations\",up:O5,artifacts:{tables:[\"job_cancellations\"]}},{version:90,name:\"job-archive\",up:F5,artifacts:{tables:[\"job_archive\"]}}];var zX=CZ[CZ.length-1]?.version??0;var j5=B8(import.meta.url),QX=Y8(j5);var JX=wZ(eZ(),1);var R5=wZ(eZ(),1);function G6(Z){try{let Q=R5.default.parse(Z);return typeof Q===\"object\"&&Q!==null?Q:{}}catch{return{}}}var L5=null;try{L5=q5(import.meta.url)(\"@signet/native\")}catch{}var W6=\"signetai\";var A5=[\"skills\",\"tools\",\"dreaming\"],WX=[\".daemon\",\".shadow\",\"node_modules\",\":(glob)**/node_modules/**\",`${W6}`,\"memory/backups\",\"memory/memories.db\",\":(glob)memory/memories.db*\",\":(glob)memory/**/*.db\",\":(glob)memory/**/*.db-*\",\":(glob)memory/**/*.db-journal\",\":(glob)memory/**/*.db-shm\",\":(glob)memory/**/*.db-wal\",\":(glob)memory/**/*.sqlite\",\":(glob)memory/**/*.sqlite3\",\":(glob)**/*.db\",\":(glob)**/*.db-*\",\":(glob)**/*.db-journal\",\":(glob)**/*.db-shm\",\":(glob)**/*.db-wal\",\":(glob)**/*.sqlite\",\":(glob)**/*.sqlite3\"],VX=[\"*.md\",\":(glob)**/*.md\",\"*.json\",\":(glob)**/*.json\",\"*.jsonl\",\":(glob)**/*.jsonl\",\"*.html\",\":(glob)**/*.html\",\"*.yaml\",\":(glob)**/*.yaml\",\"*.yml\",\":(glob)**/*.yml\",...A5];var HX=[\".daemon/\",\".shadow/\",\"node_modules/\",`${W6}/`,\"memory/memories.db*\",\"memory/**/*.db\",\"memory/**/*.db-*\",\"memory/**/*.db-journal\",\"memory/**/*.db-shm\",\"memory/**/*.db-wal\",\"memory/**/*.sqlite\",\"memory/**/*.sqlite3\",\"memory/backups/\",\"*.db\",\"*.db-*\",\"*.db-journal\",\"*.db-shm\",\"*.db-wal\",\"*.sqlite\",\"*.sqlite3\"];var _X=D5(),M5=[\"issues\",\"pulls\",\"discussions\",\"docs\"];var OX=new Set(M5);function D5(){switch(I5()){case\"darwin\":return B0(o0(),\"Library\",\"Application Support\",\"discord\");case\"win32\":return B0(process.env.APPDATA||B0(o0(),\"AppData\",\"Roaming\"),\"discord\");default:return B0(process.env.XDG_CONFIG_HOME||B0(o0(),\".config\"),\"discord\")}}var N5=[\"managed\",\"passthrough\",\"off\"],V6={agents:{path:\"AGENTS.md\",description:\"Operational rules and behavioral settings\",optional:!1},soul:{path:\"SOUL.md\",description:\"Persona, character, and security settings\",optional:!1},identity:{path:\"IDENTITY.md\",description:\"Agent name, creature type, and vibe\",optional:!1},user:{path:\"USER.md\",description:\"User profile and preferences\",optional:!1},heartbeat:{path:\"HEARTBEAT.md\",description:\"Heartbeat prompt used only for heartbeat/background check sessions\",optional:!0,context:\"session\",session:\"heartbeat\"},memory:{path:\"MEMORY.md\",description:\"Memory index and summary\",optional:!0},tools:{path:\"TOOLS.md\",description:\"Tool preferences and notes\",optional:!0},bootstrap:{path:\"BOOTSTRAP.md\",description:\"Setup ritual (typically deleted after first run)\",optional:!0,context:\"session\",session:\"bootstrap\"},dreaming:{path:\"DREAMING.md\",description:\"Dreaming/reflection prompt used only for dreaming sessions\",optional:!0,context:\"session\",session:\"dreaming\"}},T5={minimal:{name:\"minimal\",description:\"AGENTS.md only for normal startup, plus DREAMING.md for dreaming sessions.\",startup:[{path:\"AGENTS.md\",role:\"operating_instructions\",budget:12000}],special:[{path:\"DREAMING.md\",kind:\"dreaming\",role:\"dreaming_prompt\",budget:4000}]},hermes:{name:\"hermes\",description:\"Hermes-style SOUL.md primary identity with project-context discovery handled by Hermes.\",startup:[{path:\"SOUL.md\",role:\"primary_identity\",budget:4000},{path:\"AGENTS.md\",role:\"project_context\",budget:12000}],special:[{path:\"DREAMING.md\",kind:\"dreaming\",role:\"dreaming_prompt\",budget:4000}]},openclaw:{name:\"openclaw\",description:\"OpenClaw-style rich identity stack for character-forward agents.\",startup:[{path:\"AGENTS.md\",role:\"operating_instructions\",budget:12000},{path:\"SOUL.md\",role:\"persona\",budget:4000},{path:\"IDENTITY.md\",role:\"agent_identity\",budget:2000},{path:\"USER.md\",role:\"user_profile\",budget:6000},{path:\"MEMORY.md\",role:\"working_memory\",budget:1e4}],special:[{path:\"HEARTBEAT.md\",kind:\"heartbeat\",role:\"heartbeat_prompt\",budget:4000},{path:\"DREAMING.md\",kind:\"dreaming\",role:\"dreaming_prompt\",budget:4000},{path:\"BOOTSTRAP.md\",kind:\"bootstrap\",role:\"bootstrap_prompt\",budget:4000}]},custom:{name:\"custom\",description:\"User-selected startup files and explicit order.\",startup:[{path:\"AGENTS.md\",role:\"operating_instructions\",budget:12000}],special:[{path:\"DREAMING.md\",kind:\"dreaming\",role:\"dreaming_prompt\",budget:4000}]}},IX=Object.entries(V6).filter(([,Z])=>!Z.optional).map(([Z])=>Z),MX=Object.entries(V6).filter(([,Z])=>Z.optional).map(([Z])=>Z);var t0=[{file:\"AGENTS.md\",header:\"Agent Instructions\",budget:12000},{file:\"SOUL.md\",header:\"Soul\",budget:4000},{file:\"IDENTITY.md\",header:\"Identity\",budget:2000},{file:\"USER.md\",header:\"About Your User\",budget:6000},{file:\"MEMORY.md\",header:\"Working Memory\",budget:1e4}],S5={\"AGENTS.md\":\"Agent Instructions\",\"SOUL.md\":\"Soul\",\"IDENTITY.md\":\"Identity\",\"USER.md\":\"About Your User\",\"MEMORY.md\":\"Working Memory\"};function EZ(Z){let Q=Z.trim();if(!Q)return!1;if(Q.startsWith(\"/\")||Q.startsWith(\"~\"))return!1;return!Q.split(/[\\\\/]/).includes(\"..\")}function Z0(Z){return typeof Z===\"object\"&&Z!==null&&!Array.isArray(Z)?Z:{}}function PZ(Z){return typeof Z===\"string\"&&N5.includes(Z)}function H6(Z){let Q=Z0(Z),G=Z0(Q.capabilities),B=Z0(G.identity);if(PZ(B.mode))return B.mode;let O=Z0(Q.identity);if(PZ(O.mode))return O.mode;if(O.enabled===!1)return\"off\";return\"managed\"}function C5(Z){let Q=VZ(Z,\"agent.yaml\");if(!N0(Q))return\"managed\";try{return H6(G6(WZ(Q,\"utf-8\")))}catch{return\"managed\"}}function U6(Z){return Z!==\"off\"}function E5(Z){if(typeof Z===\"string\")return EZ(Z)?{path:Z}:null;let Q=Z0(Z),G=typeof Q.path===\"string\"?Q.path.trim():\"\";if(!EZ(G))return null;if(Q.enabled===!1)return null;let B=typeof Q.role===\"string\"?Q.role:void 0,O=typeof Q.budget===\"number\"?Q.budget:Number.parseInt(String(Q.budget??\"\"),10),_=Number.isFinite(O)&&O>0?Math.floor(O):void 0;return{path:G,role:B,budget:_}}function P5(Z){if(!Array.isArray(Z))return[];return Z.map(E5).filter((Q)=>Q!==null)}function w5(Z,Q){let G=Z.split(/[\\\\/]/).pop()??Z;return S5[G]??Q??G.replace(/\\.md$/i,\"\")}function y5(Z){let Q=VZ(Z,\"agent.yaml\");if(!N0(Q))return t0.map(({file:G,budget:B})=>({path:G,budget:B}));try{let G=G6(WZ(Q,\"utf-8\"));if(!U6(H6(G)))return[];let B=Z0(G.identity),O=Z0(B.startup),_=P5(O.load);if(_.length>0)return _;let Y=typeof B.preset===\"string\"?B.preset:\"\",U=T5[Y];if(U)return U.startup}catch{}return t0.map(({file:G,budget:B})=>({path:G,budget:B}))}var k5=\"[signet: daemon offline \u2014 running with static identity]\",Y6=\"[signet: daemon session-start timed out \u2014 running with static identity]\";function B6(Z){if(!Z)return 15000;let Q=Number.parseInt(Z,10);if(!Number.isFinite(Q)||Q<1000)return 15000;if(Q>120000)return 120000;return Q}function v0(Z,Q=k5){if(!N0(Z))return null;if(!U6(C5(Z)))return null;let G=[];for(let B of y5(Z)){let O=VZ(Z,B.path);if(!N0(O))continue;try{let _=WZ(O,\"utf-8\").trim();if(!_)continue;let Y=B.budget??t0.find((H)=>H.file===B.path)?.budget??4000,U=_.length<=Y?_:`${_.slice(0,Y)}\n[truncated]`;G.push(`## ${w5(B.path,B.role)}\n\n${U}`)}catch{}}if(G.length===0)return null;return`${Q}\n\n${G.join(`\n\n`)}`}var NX=f5();function x5(Z){let Q=Z.sessionManager.getBranch();if(Array.isArray(Q)&&Q.length>0)return Q;let G=Z.sessionManager.getEntries();return Array.isArray(G)?G:[]}function n(Z){let Q=Z.sessionManager.getHeader(),G=w(Z.sessionManager.getSessionId())??w(Q?.id),B=w(Z.sessionManager.getSessionFile()),O=w(Z.cwd)??w(Q?.cwd)??w(Q?.project)??w(Q?.workspace);return{sessionId:G,sessionFile:B,project:O}}async function j0(Z,Q){return await Z.client.post(\"/api/hooks/session-end\",{harness:Z.config.harness,runtimePath:Z.config.runtimePath,reason:Q.reason,sessionKey:Q.sessionId,sessionId:Q.sessionId,agentId:Q.agentId,cwd:Q.project,...Q.transcript?{transcript:Q.transcript}:{}},Z.config.writeTimeout)!==null}async function W0(Z){for(let Q of Z.state.getPendingSessionEnds()){if(Z.state.sessionAlreadyEnded(Q.sessionId)){Z.state.clearPendingSessionEnd(Q.sessionId);continue}let G=I0(Q.sessionFile,Z.config.excludedCustomTypes);if(!G.loaded){await j0(Z,{sessionId:Q.sessionId,agentId:Q.agentId,transcript:void 0,reason:Q.reason,project:void 0});continue}if(!await j0(Z,{sessionId:G.sessionId??Q.sessionId,agentId:Q.agentId,transcript:G.transcript,reason:Q.reason,project:G.project}))continue;Z.state.markSessionEnded(Q.sessionId),Z.state.clearPendingSessionData(Q.sessionId),Z.state.clearPendingSessionEnd(Q.sessionId)}}async function t(Z,Q){await W0(Z);let G=n(Q);Z.state.setActiveSession(G.sessionId,G.sessionFile),Z.state.clearSessionEnded(G.sessionId);let B=await Z.client.postResult(\"/api/hooks/session-start\",{harness:Z.config.harness,project:G.project,agentId:Z.agentId,sessionKey:G.sessionId,runtimePath:Z.config.runtimePath},Z.config.sessionStartTimeout()),O=B.ok?B.data.inject??B.data.recentContext??\"\":Z.config.staticFallback(B.reason===\"timeout\"?\"timeout\":\"offline\");Z.state.setSessionContext(O),Z.state.setPendingSessionContext(G.sessionId,O)}async function V0(Z,Q){await W0(Z);let G=n(Q);if(!G.sessionId)return;if(G.sessionId===Z.state.getActiveSessionId()&&G.sessionFile===Z.state.getActiveSessionFile())return;await t(Z,Q)}async function b0(Z,Q,G){await W0(Z);let B=n(Q);if(Z.state.sessionAlreadyEnded(B.sessionId))return;if(!await j0(Z,{sessionId:B.sessionId,agentId:Z.agentId,transcript:A0(x5(Q),Z.config.excludedCustomTypes),reason:G,project:B.project}))return;Z.state.markSessionEnded(B.sessionId),Z.state.clearPendingSessionData(B.sessionId)}async function R0(Z,Q,G){let B=w(Q.previousSessionFile)??Z.state.getActiveSessionFile(),O=I0(B,Z.config.excludedCustomTypes),_=O.sessionId??Z.state.getActiveSessionId();if(Z.state.sessionAlreadyEnded(_))return;if(!O.loaded){if(_)await j0(Z,{sessionId:_,agentId:Z.agentId,transcript:void 0,reason:G,project:void 0});if(_&&B)Z.state.queuePendingSessionEnd(_,B,Z.agentId,G);return}if(!await j0(Z,{sessionId:_,agentId:Z.agentId,transcript:O.transcript,reason:G,project:O.project})){if(_&&B)Z.state.queuePendingSessionEnd(_,B,Z.agentId,G);return}Z.state.markSessionEnded(_),Z.state.clearPendingSessionData(_)}async function q0(Z,Q,G){await W0(Z);let B=w(G);if(!B)return;await V0(Z,Q);let O=n(Q);if(!O.sessionId)return;let _=await Z.client.post(\"/api/hooks/user-prompt-submit\",{harness:Z.config.harness,project:O.project,agentId:Z.agentId,sessionKey:O.sessionId,userMessage:B,runtimePath:Z.config.runtimePath},Z.config.promptSubmitTimeout);if(!_)return;if(_.sessionKnown===!1)await t(Z,Q);let Y=w(_.inject);if(Y)Z.state.queuePendingRecall(O.sessionId,Y)}var HZ=64,K6=4,_6=128;function UZ(Z){return Z.replace(/<\\/signet-memory>/gi,\"<\\\\/signet-memory>\")}function h0(Z,Q){if(Z.size<Q)return;let G=Z.keys().next().value;if(G!==void 0)Z.delete(G)}class m0{pendingSessionContext=new Map;pendingRecall=new Map;pendingSessionEnds=new Map;endedSessions=new Map;activeSessionId;activeSessionFile;sessionContext=\"\";setActiveSession(Z,Q){this.activeSessionId=Z,this.activeSessionFile=Q}getActiveSessionId(){return this.activeSessionId}getActiveSessionFile(){return this.activeSessionFile}setSessionContext(Z){this.sessionContext=Z}getSessionContext(){return this.sessionContext}markSessionEnded(Z){if(!Z)return;if(!this.endedSessions.has(Z))h0(this.endedSessions,_6);this.endedSessions.set(Z,Date.now())}clearSessionEnded(Z){if(!Z)return;this.endedSessions.delete(Z)}sessionAlreadyEnded(Z){if(!Z)return!1;return this.endedSessions.has(Z)}setPendingSessionContext(Z,Q){if(!Z)return;let G=w(Q);if(G){this.pendingSessionContext.set(Z,G);return}this.pendingSessionContext.delete(Z)}clearPendingSessionContext(Z){if(!Z)return;this.pendingSessionContext.delete(Z)}queuePendingRecall(Z,Q){if(!this.pendingRecall.has(Z))h0(this.pendingRecall,HZ);let G=this.pendingRecall.get(Z)??[];G.push(Q);while(G.length>K6)G.shift();this.pendingRecall.set(Z,G)}clearPendingRecall(Z){if(!Z)return;this.pendingRecall.delete(Z)}clearPendingSessionData(Z){if(!Z)return;this.pendingSessionContext.delete(Z),this.pendingRecall.delete(Z),this.pendingSessionEnds.delete(Z)}hasPendingRecall(Z){if(!Z)return!1;let Q=this.pendingRecall.get(Z);return Array.isArray(Q)&&Q.length>0}consumePendingRecall(Z){if(!Z)return;let Q=this.pendingRecall.get(Z);if(!Q||Q.length===0)return;let G=Q.shift();if(Q.length===0)this.pendingRecall.delete(Z);return w(G)}queuePendingSessionEnd(Z,Q,G,B){if(!this.pendingSessionEnds.has(Z))h0(this.pendingSessionEnds,HZ);this.pendingSessionEnds.set(Z,{sessionId:Z,sessionFile:Q,agentId:G,reason:B})}clearPendingSessionEnd(Z){if(!Z)return;this.pendingSessionEnds.delete(Z)}getPendingSessionEnds(){return Array.from(this.pendingSessionEnds.values())}}var O6=\"http://localhost:3850\",L0=\"oh-my-pi\",J0=\"plugin\",u0=5000,p0=1e4,F6=5000,j6=\"SIGNET_SESSION_START_TIMEOUT\",R6=\"SIGNET_FETCH_TIMEOUT\",d0=\"signet-oh-my-pi-hidden-recall\",l0=\"signet-oh-my-pi-session-context\";function q6(Z){return i0(Z,{logPrefix:\"signet-oh-my-pi\",actorName:\"oh-my-pi-extension\",runtimePath:J0,defaultTimeout:u0})}import{homedir as g5}from\"node:os\";import{join as v5}from\"node:path\";var b5=new Set([d0,l0]),L6={harness:L0,runtimePath:J0,writeTimeout:p0,promptSubmitTimeout:F6,excludedCustomTypes:b5,sessionStartTimeout:()=>B6(p(j6)??p(R6)),staticFallback:(Z)=>{let Q=p(\"SIGNET_PATH\")??v5(g5(),\".agents\");if(Z===\"timeout\")return v0(Q,Y6)??\"\";return v0(Q)??\"\"}};function h5(Z,Q){return{role:\"custom\",customType:Z,display:!1,content:`<signet-memory source=\"auto-recall\">\n${UZ(Q)}\n</signet-memory>`,attribution:\"agent\",timestamp:Date.now()}}function m5(Z,Q){let G=[w(Z),w(Q)].filter((B)=>typeof B===\"string\"&&B.length>0);if(G.length===0)return;return G.join(`\n\n`)}class A6 extends m0{consumePersistentHiddenInject(Z){if(!Z)return;let Q=w(this.pendingSessionContext.get(Z));this.pendingSessionContext.delete(Z);let G=this.consumePendingRecall(Z),B=m5(Q,G);if(!B)return;return h5(G?d0:l0,B)}}function I6(){return new A6}function u5(Z,Q){Z.on(\"session_start\",async(G,B)=>{await t(Q,B)}),Z.on(\"session_switch\",async(G,B)=>{await R0(Q,G,G.type),await t(Q,B)}),Z.on(\"session_branch\",async(G,B)=>{await R0(Q,G,G.type),await t(Q,B)}),Z.on(\"session_shutdown\",async(G,B)=>{await b0(Q,B,\"session_shutdown\")})}function p5(Z,Q){Z.on(\"input\",async(G,B)=>{let O=n(B);Q.state.clearPendingRecall(O.sessionId),await q0(Q,B,G.text)}),Z.on(\"before_agent_start\",async(G,B)=>{await V0(Q,B);let O=n(B);if(!O.sessionId)return;if(!Q.state.hasPendingRecall(O.sessionId))await q0(Q,B,G.prompt);let _=Q.state.consumePersistentHiddenInject(O.sessionId);if(!_)return;return{message:_}})}function d5(Z,Q){Z.on(\"session.compacting\",async(G,B)=>{await V0(Q,B);let O=n(B),_=await Q.client.post(\"/api/hooks/pre-compaction\",{harness:L0,sessionKey:O.sessionId??w(G.sessionId),messageCount:Array.isArray(G.messages)?G.messages.length:void 0,runtimePath:J0},u0);if(!_&&!Q.state.getSessionContext())return;let Y=w(_?.guidelines)??w(Q.state.getSessionContext()),U=w(_?.summaryPrompt);if(!Y&&!U)return;return{context:Y?[Y]:void 0,prompt:U}}),Z.on(\"session_compact\",async(G,B)=>{let O=w(G.compactionEntry?.summary);if(!O)return;let _=n(B);await Q.client.post(\"/api/hooks/compaction-complete\",{harness:L0,summary:O,project:_.project,sessionKey:_.sessionId,agentId:Q.agentId,runtimePath:J0},p0)})}var l5=(Z)=>{if(H0(\"SIGNET_ENABLED\")===\"false\")return;if(H0(\"SIGNET_BYPASS\")===\"1\")return;let Q={agentId:p(\"SIGNET_AGENT_ID\"),client:q6(p(\"SIGNET_DAEMON_URL\")??O6),state:I6(),config:L6};u5(Z,Q),p5(Z,Q),d5(Z,Q)},W7=l5;export{W7 as default};\n";
7
+ export declare const EXTENSION_BUNDLE = "function r(Z){return typeof Z===\"object\"&&Z!==null}function H0(Z){let Q=Reflect.get(globalThis,\"process\");if(!r(Q))return;let G=Reflect.get(Q,\"env\");if(!r(G))return;let B=Reflect.get(G,Z);return typeof B===\"string\"?B:void 0}function w(Z){if(typeof Z!==\"string\")return;let Q=Z.trim();return Q.length>0?Q:void 0}function p(Z){return w(H0(Z))}import{existsSync as M6,readFileSync as D6}from\"node:fs\";function BZ(Z){return Z.replace(/\\s*\\r?\\n\\s*/g,\" \").trim()}function N6(Z){let Q=Z?.trim().toLowerCase();if(!Q||[\"user\",\"human\",\"client\"].includes(Q))return\"User\";if([\"assistant\",\"agent\",\"model\",\"ai\"].includes(Q))return\"Assistant\";if([\"system\",\"developer\"].includes(Q))return\"System\";if([\"custom\",\"tool\",\"toolresult\",\"tool_result\",\"bashexecution\",\"pythonexecution\"].includes(Q))return Q===\"custom\"?\"Custom\":\"Tool\";return}function T6(Z){if(typeof Z===\"string\"){let G=BZ(Z);return G.length>0?G:void 0}if(!Array.isArray(Z))return;let Q=[];for(let G of Z){if(!r(G))continue;let B=w(G.text)??w(G.input_text)??w(G.content);if(!B)continue;Q.push(BZ(B))}if(Q.length===0)return;return Q.join(\" \")}function KZ(Z,Q){let G=T6(Q),B=N6(Z);if(!G||!B)return;return`${B}: ${G}`}function S6(Z,Q){if(!r(Z)||typeof Z.type!==\"string\")return;if(Z.type===\"custom_message\"){if(typeof Z.customType===\"string\"&&Q.has(Z.customType))return;return KZ(\"custom\",Z.content)}if(Z.type!==\"message\")return;if(!r(Z.message))return;let G=w(Z.message.role),B=Reflect.get(Z.message,\"content\")??Reflect.get(Z.message,\"parts\");return KZ(G,B)}function A0(Z,Q=new Set){let G=[];for(let B of Z){let O=S6(B,Q);if(!O)continue;G.push(O)}if(G.length===0)return;return G.join(`\n`)}function C6(Z){try{return JSON.parse(Z)}catch{return}}function E6(Z){let Q,G=[];for(let B of Z){let O=C6(B);if(!r(O)||typeof O.type!==\"string\")continue;if(O.type===\"session\"){Q=O;continue}G.push(O)}return{header:Q,entries:G}}function P6(Z){return D6(Z,\"utf-8\").split(`\n`).map((Q)=>Q.trim()).filter((Q)=>Q.length>0)}function w6(Z){return w(Z?.cwd)??w(Z?.project)??w(Z?.workspace)}function I0(Z,Q=new Set){if(!Z||!M6(Z))return{loaded:!1,sessionId:void 0,project:void 0,transcript:void 0};try{let{header:G,entries:B}=E6(P6(Z));return{loaded:!0,sessionId:w(G?.id),project:w6(G),transcript:A0(B,Q)}}catch{return{loaded:!1,sessionId:void 0,project:void 0,transcript:void 0}}}function y6(){return p(\"SIGNET_API_KEY\")??p(\"SIGNET_TOKEN\")}function k6(Z){let Q={\"Content-Type\":\"application/json\",\"x-signet-runtime-path\":Z.runtimePath,\"x-signet-actor\":Z.actorName,\"x-signet-actor-type\":\"harness\"},G=y6();if(G)Q.Authorization=`Bearer ${G}`;return Q}function FZ(Z){if(typeof Z!==\"object\"||Z===null)return\"\";let Q=Reflect.get(Z,\"name\");return typeof Q===\"string\"?Q:\"\"}function _Z(Z){let Q=FZ(Z);if(Q===\"AbortError\"||Q===\"TimeoutError\")return!0;return(typeof Z===\"object\"&&Z!==null?Reflect.get(Z,\"code\"):void 0)===\"ABORT_ERR\"}async function OZ(Z,Q,G,B={}){let{method:O=\"POST\",body:_,timeout:Y=G.defaultTimeout}=B;try{let U={method:O,headers:k6(G),signal:AbortSignal.timeout(Y)};if(_!==void 0)U.body=JSON.stringify(_);let H=await fetch(`${Z}${Q}`,U);if(!H.ok)return console.warn(`[${G.logPrefix}] ${O} ${Q} failed: ${H.status}`),{ok:!1,reason:\"http\",status:H.status};try{let z=await H.text();try{return{ok:!0,data:JSON.parse(z)}}catch{return console.warn(`[${G.logPrefix}] ${O} ${Q} returned invalid JSON (${z.length} chars${z.length===0?\", empty body\":\"\"})`),{ok:!1,reason:\"invalid-json\",status:H.status}}}catch(z){if(_Z(z))return console.warn(`[${G.logPrefix}] ${O} ${Q} body read timed out after ${Y}ms`),{ok:!1,reason:\"timeout\"};return console.warn(`[${G.logPrefix}] ${O} ${Q} body read failed:`,FZ(z)||z),{ok:!1,reason:\"body-read\"}}}catch(U){if(_Z(U))return console.warn(`[${G.logPrefix}] ${O} ${Q} timed out after ${Y}ms`),{ok:!1,reason:\"timeout\"};return console.warn(`[${G.logPrefix}] ${O} ${Q} error:`,U),{ok:!1,reason:\"offline\"}}}function i0(Z,Q){return{async post(G,B,O=Q.defaultTimeout){let _=await OZ(Z,G,Q,{method:\"POST\",body:B,timeout:O});if(!_.ok)return null;return _.data},postResult(G,B,O=Q.defaultTimeout){return OZ(Z,G,Q,{method:\"POST\",body:B,timeout:O})}}}import{createRequire as x6}from\"node:module\";import{dirname as Y8,join as XX}from\"node:path\";import{fileURLToPath as B8}from\"node:url\";import{createRequire as q5}from\"node:module\";import{homedir as o0,platform as I5}from\"node:os\";import{basename as BX,dirname as KX,resolve as B0}from\"node:path\";import{existsSync as N0,readFileSync as WZ,readdirSync as jX,realpathSync as RX,statSync as qX}from\"node:fs\";import{dirname as AX,join as VZ}from\"node:path\";import{homedir as x5}from\"node:os\";var{create:f6,getPrototypeOf:g6,defineProperty:jZ,getOwnPropertyNames:v6}=Object,b6=Object.prototype.hasOwnProperty;function h6(Z){return this[Z]}var m6,u6,wZ=(Z,Q,G)=>{var B=Z!=null&&typeof Z===\"object\";if(B){var O=Q?m6??=new WeakMap:u6??=new WeakMap,_=O.get(Z);if(_)return _}G=Z!=null?f6(g6(Z)):{};let Y=Q||!Z||!Z.__esModule?jZ(G,\"default\",{value:Z,enumerable:!0}):G;for(let U of v6(Z))if(!b6.call(Y,U))jZ(Y,U,{get:h6.bind(Z,U),enumerable:!0});if(B)O.set(Z,Y);return Y},S=(Z,Q)=>()=>(Q||Z((Q={exports:{}}).exports,Q),Q.exports),T0=x6(import.meta.url),y=S((Z)=>{var Q=Symbol.for(\"yaml.alias\"),G=Symbol.for(\"yaml.document\"),B=Symbol.for(\"yaml.map\"),O=Symbol.for(\"yaml.pair\"),_=Symbol.for(\"yaml.scalar\"),Y=Symbol.for(\"yaml.seq\"),U=Symbol.for(\"yaml.node.type\"),H=(j)=>!!j&&typeof j===\"object\"&&j[U]===Q,z=(j)=>!!j&&typeof j===\"object\"&&j[U]===G,V=(j)=>!!j&&typeof j===\"object\"&&j[U]===B,X=(j)=>!!j&&typeof j===\"object\"&&j[U]===O,$=(j)=>!!j&&typeof j===\"object\"&&j[U]===_,J=(j)=>!!j&&typeof j===\"object\"&&j[U]===Y;function W(j){if(j&&typeof j===\"object\")switch(j[U]){case B:case Y:return!0}return!1}function K(j){if(j&&typeof j===\"object\")switch(j[U]){case Q:case B:case _:case Y:return!0}return!1}var F=(j)=>($(j)||W(j))&&!!j.anchor;Z.ALIAS=Q,Z.DOC=G,Z.MAP=B,Z.NODE_TYPE=U,Z.PAIR=O,Z.SCALAR=_,Z.SEQ=Y,Z.hasAnchor=F,Z.isAlias=H,Z.isCollection=W,Z.isDocument=z,Z.isMap=V,Z.isNode=K,Z.isPair=X,Z.isScalar=$,Z.isSeq=J}),S0=S((Z)=>{var Q=y(),G=Symbol(\"break visit\"),B=Symbol(\"skip children\"),O=Symbol(\"remove node\");function _($,J){let W=z(J);if(Q.isDocument($)){if(Y(null,$.contents,W,Object.freeze([$]))===O)$.contents=null}else Y(null,$,W,Object.freeze([]))}_.BREAK=G,_.SKIP=B,_.REMOVE=O;function Y($,J,W,K){let F=V($,J,W,K);if(Q.isNode(F)||Q.isPair(F))return X($,K,F),Y($,F,W,K);if(typeof F!==\"symbol\"){if(Q.isCollection(J)){K=Object.freeze(K.concat(J));for(let j=0;j<J.items.length;++j){let R=Y(j,J.items[j],W,K);if(typeof R===\"number\")j=R-1;else if(R===G)return G;else if(R===O)J.items.splice(j,1),j-=1}}else if(Q.isPair(J)){K=Object.freeze(K.concat(J));let j=Y(\"key\",J.key,W,K);if(j===G)return G;else if(j===O)J.key=null;let R=Y(\"value\",J.value,W,K);if(R===G)return G;else if(R===O)J.value=null}}return F}async function U($,J){let W=z(J);if(Q.isDocument($)){if(await H(null,$.contents,W,Object.freeze([$]))===O)$.contents=null}else await H(null,$,W,Object.freeze([]))}U.BREAK=G,U.SKIP=B,U.REMOVE=O;async function H($,J,W,K){let F=await V($,J,W,K);if(Q.isNode(F)||Q.isPair(F))return X($,K,F),H($,F,W,K);if(typeof F!==\"symbol\"){if(Q.isCollection(J)){K=Object.freeze(K.concat(J));for(let j=0;j<J.items.length;++j){let R=await H(j,J.items[j],W,K);if(typeof R===\"number\")j=R-1;else if(R===G)return G;else if(R===O)J.items.splice(j,1),j-=1}}else if(Q.isPair(J)){K=Object.freeze(K.concat(J));let j=await H(\"key\",J.key,W,K);if(j===G)return G;else if(j===O)J.key=null;let R=await H(\"value\",J.value,W,K);if(R===G)return G;else if(R===O)J.value=null}}return F}function z($){if(typeof $===\"object\"&&($.Collection||$.Node||$.Value))return Object.assign({Alias:$.Node,Map:$.Node,Scalar:$.Node,Seq:$.Node},$.Value&&{Map:$.Value,Scalar:$.Value,Seq:$.Value},$.Collection&&{Map:$.Collection,Seq:$.Collection},$);return $}function V($,J,W,K){if(typeof W===\"function\")return W($,J,K);if(Q.isMap(J))return W.Map?.($,J,K);if(Q.isSeq(J))return W.Seq?.($,J,K);if(Q.isPair(J))return W.Pair?.($,J,K);if(Q.isScalar(J))return W.Scalar?.($,J,K);if(Q.isAlias(J))return W.Alias?.($,J,K);return}function X($,J,W){let K=J[J.length-1];if(Q.isCollection(K))K.items[$]=W;else if(Q.isPair(K))if($===\"key\")K.key=W;else K.value=W;else if(Q.isDocument(K))K.contents=W;else{let F=Q.isAlias(K)?\"alias\":\"scalar\";throw Error(`Cannot replace node with ${F} parent`)}}Z.visit=_,Z.visitAsync=U}),yZ=S((Z)=>{var Q=y(),G=S0(),B={\"!\":\"%21\",\",\":\"%2C\",\"[\":\"%5B\",\"]\":\"%5D\",\"{\":\"%7B\",\"}\":\"%7D\"},O=(Y)=>Y.replace(/[!,[\\]{}]/g,(U)=>B[U]);class _{constructor(Y,U){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},_.defaultYaml,Y),this.tags=Object.assign({},_.defaultTags,U)}clone(){let Y=new _(this.yaml,this.tags);return Y.docStart=this.docStart,Y}atDocument(){let Y=new _(this.yaml,this.tags);switch(this.yaml.version){case\"1.1\":this.atNextDocument=!0;break;case\"1.2\":this.atNextDocument=!1,this.yaml={explicit:_.defaultYaml.explicit,version:\"1.2\"},this.tags=Object.assign({},_.defaultTags);break}return Y}add(Y,U){if(this.atNextDocument)this.yaml={explicit:_.defaultYaml.explicit,version:\"1.1\"},this.tags=Object.assign({},_.defaultTags),this.atNextDocument=!1;let H=Y.trim().split(/[ \\t]+/),z=H.shift();switch(z){case\"%TAG\":{if(H.length!==2){if(U(0,\"%TAG directive should contain exactly two parts\"),H.length<2)return!1}let[V,X]=H;return this.tags[V]=X,!0}case\"%YAML\":{if(this.yaml.explicit=!0,H.length!==1)return U(0,\"%YAML directive should contain exactly one part\"),!1;let[V]=H;if(V===\"1.1\"||V===\"1.2\")return this.yaml.version=V,!0;else{let X=/^\\d+\\.\\d+$/.test(V);return U(6,`Unsupported YAML version ${V}`,X),!1}}default:return U(0,`Unknown directive ${z}`,!0),!1}}tagName(Y,U){if(Y===\"!\")return\"!\";if(Y[0]!==\"!\")return U(`Not a valid tag: ${Y}`),null;if(Y[1]===\"<\"){let X=Y.slice(2,-1);if(X===\"!\"||X===\"!!\")return U(`Verbatim tags aren't resolved, so ${Y} is invalid.`),null;if(Y[Y.length-1]!==\">\")U(\"Verbatim tags must end with a >\");return X}let[,H,z]=Y.match(/^(.*!)([^!]*)$/s);if(!z)U(`The ${Y} tag has no suffix`);let V=this.tags[H];if(V)try{return V+decodeURIComponent(z)}catch(X){return U(String(X)),null}if(H===\"!\")return Y;return U(`Could not resolve tag: ${Y}`),null}tagString(Y){for(let[U,H]of Object.entries(this.tags))if(Y.startsWith(H))return U+O(Y.substring(H.length));return Y[0]===\"!\"?Y:`!<${Y}>`}toString(Y){let U=this.yaml.explicit?[`%YAML ${this.yaml.version||\"1.2\"}`]:[],H=Object.entries(this.tags),z;if(Y&&H.length>0&&Q.isNode(Y.contents)){let V={};G.visit(Y.contents,(X,$)=>{if(Q.isNode($)&&$.tag)V[$.tag]=!0}),z=Object.keys(V)}else z=[];for(let[V,X]of H){if(V===\"!!\"&&X===\"tag:yaml.org,2002:\")continue;if(!Y||z.some(($)=>$.startsWith(X)))U.push(`%TAG ${V} ${X}`)}return U.join(`\n`)}}_.defaultYaml={explicit:!1,version:\"1.2\"},_.defaultTags={\"!!\":\"tag:yaml.org,2002:\"},Z.Directives=_}),e0=S((Z)=>{var Q=y(),G=S0();function B(U){if(/[\\x00-\\x19\\s,[\\]{}]/.test(U)){let z=`Anchor must not contain whitespace or control characters: ${JSON.stringify(U)}`;throw Error(z)}return!0}function O(U){let H=new Set;return G.visit(U,{Value(z,V){if(V.anchor)H.add(V.anchor)}}),H}function _(U,H){for(let z=1;;++z){let V=`${U}${z}`;if(!H.has(V))return V}}function Y(U,H){let z=[],V=new Map,X=null;return{onAnchor:($)=>{z.push($),X??(X=O(U));let J=_(H,X);return X.add(J),J},setAnchors:()=>{for(let $ of z){let J=V.get($);if(typeof J===\"object\"&&J.anchor&&(Q.isScalar(J.node)||Q.isCollection(J.node)))J.node.anchor=J.anchor;else{let W=Error(\"Failed to resolve repeated object (this should not happen)\");throw W.source=$,W}}},sourceObjects:V}}Z.anchorIsValid=B,Z.anchorNames=O,Z.createNodeAnchors=Y,Z.findNewAnchor=_}),kZ=S((Z)=>{function Q(G,B,O,_){if(_&&typeof _===\"object\")if(Array.isArray(_))for(let Y=0,U=_.length;Y<U;++Y){let H=_[Y],z=Q(G,_,String(Y),H);if(z===void 0)delete _[Y];else if(z!==H)_[Y]=z}else if(_ instanceof Map)for(let Y of Array.from(_.keys())){let U=_.get(Y),H=Q(G,_,Y,U);if(H===void 0)_.delete(Y);else if(H!==U)_.set(Y,H)}else if(_ instanceof Set)for(let Y of Array.from(_)){let U=Q(G,_,Y,Y);if(U===void 0)_.delete(Y);else if(U!==Y)_.delete(Y),_.add(U)}else for(let[Y,U]of Object.entries(_)){let H=Q(G,_,Y,U);if(H===void 0)delete _[Y];else if(H!==U)_[Y]=H}return G.call(B,O,_)}Z.applyReviver=Q}),X0=S((Z)=>{var Q=y();function G(B,O,_){if(Array.isArray(B))return B.map((Y,U)=>G(Y,String(U),_));if(B&&typeof B.toJSON===\"function\"){if(!_||!Q.hasAnchor(B))return B.toJSON(O,_);let Y={aliasCount:0,count:1,res:void 0};_.anchors.set(B,Y),_.onCreate=(H)=>{Y.res=H,delete _.onCreate};let U=B.toJSON(O,_);if(_.onCreate)_.onCreate(U);return U}if(typeof B===\"bigint\"&&!_?.keep)return Number(B);return B}Z.toJS=G}),ZZ=S((Z)=>{var Q=kZ(),G=y(),B=X0();class O{constructor(_){Object.defineProperty(this,G.NODE_TYPE,{value:_})}clone(){let _=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));if(this.range)_.range=this.range.slice();return _}toJS(_,{mapAsMap:Y,maxAliasCount:U,onAnchor:H,reviver:z}={}){if(!G.isDocument(_))throw TypeError(\"A document argument is required\");let V={anchors:new Map,doc:_,keep:!0,mapAsMap:Y===!0,mapKeyWarned:!1,maxAliasCount:typeof U===\"number\"?U:100},X=B.toJS(this,\"\",V);if(typeof H===\"function\")for(let{count:$,res:J}of V.anchors.values())H(J,$);return typeof z===\"function\"?Q.applyReviver(z,{\"\":X},\"\",X):X}}Z.NodeBase=O}),C0=S((Z)=>{var Q=e0(),G=S0(),B=y(),O=ZZ(),_=X0();class Y extends O.NodeBase{constructor(H){super(B.ALIAS);this.source=H,Object.defineProperty(this,\"tag\",{set(){throw Error(\"Alias nodes cannot have tags\")}})}resolve(H,z){let V;if(z?.aliasResolveCache)V=z.aliasResolveCache;else if(V=[],G.visit(H,{Node:($,J)=>{if(B.isAlias(J)||B.hasAnchor(J))V.push(J)}}),z)z.aliasResolveCache=V;let X=void 0;for(let $ of V){if($===this)break;if($.anchor===this.source)X=$}return X}toJSON(H,z){if(!z)return{source:this.source};let{anchors:V,doc:X,maxAliasCount:$}=z,J=this.resolve(X,z);if(!J){let K=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw ReferenceError(K)}let W=V.get(J);if(!W)_.toJS(J,null,z),W=V.get(J);if(W?.res===void 0)throw ReferenceError(\"This should not happen: Alias anchor was not resolved?\");if($>=0){if(W.count+=1,W.aliasCount===0)W.aliasCount=U(X,J,V);if(W.count*W.aliasCount>$)throw ReferenceError(\"Excessive alias count indicates a resource exhaustion attack\")}return W.res}toString(H,z,V){let X=`*${this.source}`;if(H){if(Q.anchorIsValid(this.source),H.options.verifyAliasOrder&&!H.anchors.has(this.source)){let $=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw Error($)}if(H.implicitKey)return`${X} `}return X}}function U(H,z,V){if(B.isAlias(z)){let X=z.resolve(H),$=V&&X&&V.get(X);return $?$.count*$.aliasCount:0}else if(B.isCollection(z)){let X=0;for(let $ of z.items){let J=U(H,$,V);if(J>X)X=J}return X}else if(B.isPair(z)){let X=U(H,z.key,V),$=U(H,z.value,V);return Math.max(X,$)}return 1}Z.Alias=Y}),b=S((Z)=>{var Q=y(),G=ZZ(),B=X0(),O=(Y)=>!Y||typeof Y!==\"function\"&&typeof Y!==\"object\";class _ extends G.NodeBase{constructor(Y){super(Q.SCALAR);this.value=Y}toJSON(Y,U){return U?.keep?this.value:B.toJS(this.value,Y,U)}toString(){return String(this.value)}}_.BLOCK_FOLDED=\"BLOCK_FOLDED\",_.BLOCK_LITERAL=\"BLOCK_LITERAL\",_.PLAIN=\"PLAIN\",_.QUOTE_DOUBLE=\"QUOTE_DOUBLE\",_.QUOTE_SINGLE=\"QUOTE_SINGLE\",Z.Scalar=_,Z.isScalarValue=O}),E0=S((Z)=>{var Q=C0(),G=y(),B=b(),O=\"tag:yaml.org,2002:\";function _(U,H,z){if(H){let V=z.filter(($)=>$.tag===H),X=V.find(($)=>!$.format)??V[0];if(!X)throw Error(`Tag ${H} not found`);return X}return z.find((V)=>V.identify?.(U)&&!V.format)}function Y(U,H,z){if(G.isDocument(U))U=U.contents;if(G.isNode(U))return U;if(G.isPair(U)){let R=z.schema[G.MAP].createNode?.(z.schema,null,z);return R.items.push(U),R}if(U instanceof String||U instanceof Number||U instanceof Boolean||typeof BigInt<\"u\"&&U instanceof BigInt)U=U.valueOf();let{aliasDuplicateObjects:V,onAnchor:X,onTagObj:$,schema:J,sourceObjects:W}=z,K=void 0;if(V&&U&&typeof U===\"object\")if(K=W.get(U),K)return K.anchor??(K.anchor=X(U)),new Q.Alias(K.anchor);else K={anchor:null,node:null},W.set(U,K);if(H?.startsWith(\"!!\"))H=O+H.slice(2);let F=_(U,H,J.tags);if(!F){if(U&&typeof U.toJSON===\"function\")U=U.toJSON();if(!U||typeof U!==\"object\"){let R=new B.Scalar(U);if(K)K.node=R;return R}F=U instanceof Map?J[G.MAP]:(Symbol.iterator in Object(U))?J[G.SEQ]:J[G.MAP]}if($)$(F),delete z.onTagObj;let j=F?.createNode?F.createNode(z.schema,U,z):typeof F?.nodeClass?.from===\"function\"?F.nodeClass.from(z.schema,U,z):new B.Scalar(U);if(H)j.tag=H;else if(!F.default)j.tag=F.tag;if(K)K.node=j;return j}Z.createNode=Y}),XZ=S((Z)=>{var Q=E0(),G=y(),B=ZZ();function O(U,H,z){let V=z;for(let X=H.length-1;X>=0;--X){let $=H[X];if(typeof $===\"number\"&&Number.isInteger($)&&$>=0){let J=[];J[$]=V,V=J}else V=new Map([[$,V]])}return Q.createNode(V,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw Error(\"This should not happen, please report a bug.\")},schema:U,sourceObjects:new Map})}var _=(U)=>U==null||typeof U===\"object\"&&!!U[Symbol.iterator]().next().done;class Y extends B.NodeBase{constructor(U,H){super(U);Object.defineProperty(this,\"schema\",{value:H,configurable:!0,enumerable:!1,writable:!0})}clone(U){let H=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));if(U)H.schema=U;if(H.items=H.items.map((z)=>G.isNode(z)||G.isPair(z)?z.clone(U):z),this.range)H.range=this.range.slice();return H}addIn(U,H){if(_(U))this.add(H);else{let[z,...V]=U,X=this.get(z,!0);if(G.isCollection(X))X.addIn(V,H);else if(X===void 0&&this.schema)this.set(z,O(this.schema,V,H));else throw Error(`Expected YAML collection at ${z}. Remaining path: ${V}`)}}deleteIn(U){let[H,...z]=U;if(z.length===0)return this.delete(H);let V=this.get(H,!0);if(G.isCollection(V))return V.deleteIn(z);else throw Error(`Expected YAML collection at ${H}. Remaining path: ${z}`)}getIn(U,H){let[z,...V]=U,X=this.get(z,!0);if(V.length===0)return!H&&G.isScalar(X)?X.value:X;else return G.isCollection(X)?X.getIn(V,H):void 0}hasAllNullValues(U){return this.items.every((H)=>{if(!G.isPair(H))return!1;let z=H.value;return z==null||U&&G.isScalar(z)&&z.value==null&&!z.commentBefore&&!z.comment&&!z.tag})}hasIn(U){let[H,...z]=U;if(z.length===0)return this.has(H);let V=this.get(H,!0);return G.isCollection(V)?V.hasIn(z):!1}setIn(U,H){let[z,...V]=U;if(V.length===0)this.set(z,H);else{let X=this.get(z,!0);if(G.isCollection(X))X.setIn(V,H);else if(X===void 0&&this.schema)this.set(z,O(this.schema,V,H));else throw Error(`Expected YAML collection at ${z}. Remaining path: ${V}`)}}}Z.Collection=Y,Z.collectionFromPath=O,Z.isEmptyPath=_}),P0=S((Z)=>{var Q=(O)=>O.replace(/^(?!$)(?: $)?/gm,\"#\");function G(O,_){if(/^\\n+$/.test(O))return O.substring(1);return _?O.replace(/^(?! *$)/gm,_):O}var B=(O,_,Y)=>O.endsWith(`\n`)?G(Y,_):Y.includes(`\n`)?`\n`+G(Y,_):(O.endsWith(\" \")?\"\":\" \")+Y;Z.indentComment=G,Z.lineComment=B,Z.stringifyComment=Q}),p6=S((Z)=>{var Q=\"flow\",G=\"block\",B=\"quoted\";function O(Y,U,H=\"flow\",{indentAtStart:z,lineWidth:V=80,minContentWidth:X=20,onFold:$,onOverflow:J}={}){if(!V||V<0)return Y;if(V<X)X=0;let W=Math.max(1+X,1+V-U.length);if(Y.length<=W)return Y;let K=[],F={},j=V-U.length;if(typeof z===\"number\")if(z>V-Math.max(2,X))K.push(0);else j=V-z;let R=void 0,q=void 0,I=!1,L=-1,A=-1,D=-1;if(H===G){if(L=_(Y,L,U.length),L!==-1)j=L+W}for(let T;T=Y[L+=1];){if(H===B&&T===\"\\\\\"){switch(A=L,Y[L+1]){case\"x\":L+=3;break;case\"u\":L+=5;break;case\"U\":L+=9;break;default:L+=1}D=L}if(T===`\n`){if(H===G)L=_(Y,L,U.length);j=L+U.length+W,R=void 0}else{if(T===\" \"&&q&&q!==\" \"&&q!==`\n`&&q!==\"\\t\"){let M=Y[L+1];if(M&&M!==\" \"&&M!==`\n`&&M!==\"\\t\")R=L}if(L>=j)if(R)K.push(R),j=R+W,R=void 0;else if(H===B){while(q===\" \"||q===\"\\t\")q=T,T=Y[L+=1],I=!0;let M=L>D+1?L-2:A-1;if(F[M])return Y;K.push(M),F[M]=!0,j=M+W,R=void 0}else I=!0}q=T}if(I&&J)J();if(K.length===0)return Y;if($)$();let N=Y.slice(0,K[0]);for(let T=0;T<K.length;++T){let M=K[T],C=K[T+1]||Y.length;if(M===0)N=`\n${U}${Y.slice(0,C)}`;else{if(H===B&&F[M])N+=`${Y[M]}\\\\`;N+=`\n${U}${Y.slice(M+1,C)}`}}return N}function _(Y,U,H){let z=U,V=U+1,X=Y[V];while(X===\" \"||X===\"\\t\")if(U<V+H)X=Y[++U];else{do X=Y[++U];while(X&&X!==`\n`);z=U,V=U+1,X=Y[V]}return z}Z.FOLD_BLOCK=G,Z.FOLD_FLOW=Q,Z.FOLD_QUOTED=B,Z.foldFlowLines=O}),w0=S((Z)=>{var Q=b(),G=p6(),B=(J,W)=>({indentAtStart:W?J.indent.length:J.indentAtStart,lineWidth:J.options.lineWidth,minContentWidth:J.options.minContentWidth}),O=(J)=>/^(%|---|\\.\\.\\.)/m.test(J);function _(J,W,K){if(!W||W<0)return!1;let F=W-K,j=J.length;if(j<=F)return!1;for(let R=0,q=0;R<j;++R)if(J[R]===`\n`){if(R-q>F)return!0;if(q=R+1,j-q<=F)return!1}return!0}function Y(J,W){let K=JSON.stringify(J);if(W.options.doubleQuotedAsJSON)return K;let{implicitKey:F}=W,j=W.options.doubleQuotedMinMultiLineLength,R=W.indent||(O(J)?\" \":\"\"),q=\"\",I=0;for(let L=0,A=K[L];A;A=K[++L]){if(A===\" \"&&K[L+1]===\"\\\\\"&&K[L+2]===\"n\")q+=K.slice(I,L)+\"\\\\ \",L+=1,I=L,A=\"\\\\\";if(A===\"\\\\\")switch(K[L+1]){case\"u\":{q+=K.slice(I,L);let D=K.substr(L+2,4);switch(D){case\"0000\":q+=\"\\\\0\";break;case\"0007\":q+=\"\\\\a\";break;case\"000b\":q+=\"\\\\v\";break;case\"001b\":q+=\"\\\\e\";break;case\"0085\":q+=\"\\\\N\";break;case\"00a0\":q+=\"\\\\_\";break;case\"2028\":q+=\"\\\\L\";break;case\"2029\":q+=\"\\\\P\";break;default:if(D.substr(0,2)===\"00\")q+=\"\\\\x\"+D.substr(2);else q+=K.substr(L,6)}L+=5,I=L+1}break;case\"n\":if(F||K[L+2]==='\"'||K.length<j)L+=1;else{q+=K.slice(I,L)+`\n\n`;while(K[L+2]===\"\\\\\"&&K[L+3]===\"n\"&&K[L+4]!=='\"')q+=`\n`,L+=2;if(q+=R,K[L+2]===\" \")q+=\"\\\\\";L+=1,I=L+1}break;default:L+=1}}return q=I?q+K.slice(I):K,F?q:G.foldFlowLines(q,R,G.FOLD_QUOTED,B(W,!1))}function U(J,W){if(W.options.singleQuote===!1||W.implicitKey&&J.includes(`\n`)||/[ \\t]\\n|\\n[ \\t]/.test(J))return Y(J,W);let K=W.indent||(O(J)?\" \":\"\"),F=\"'\"+J.replace(/'/g,\"''\").replace(/\\n+/g,`$&\n${K}`)+\"'\";return W.implicitKey?F:G.foldFlowLines(F,K,G.FOLD_FLOW,B(W,!1))}function H(J,W){let{singleQuote:K}=W.options,F;if(K===!1)F=Y;else{let j=J.includes('\"'),R=J.includes(\"'\");if(j&&!R)F=U;else if(R&&!j)F=Y;else F=K?U:Y}return F(J,W)}var z;try{z=new RegExp(`(^|(?<!\n))\n+(?!\n|$)`,\"g\")}catch{z=/\\n+(?!\\n|$)/g}function V({comment:J,type:W,value:K},F,j,R){let{blockQuote:q,commentString:I,lineWidth:L}=F.options;if(!q||/\\n[\\t ]+$/.test(K))return H(K,F);let A=F.indent||(F.forceBlockIndent||O(K)?\" \":\"\"),D=q===\"literal\"?!0:q===\"folded\"||W===Q.Scalar.BLOCK_FOLDED?!1:W===Q.Scalar.BLOCK_LITERAL?!0:!_(K,L,A.length);if(!K)return D?`|\n`:`>\n`;let N,T;for(T=K.length;T>0;--T){let P=K[T-1];if(P!==`\n`&&P!==\"\\t\"&&P!==\" \")break}let M=K.substring(T),C=M.indexOf(`\n`);if(C===-1)N=\"-\";else if(K===M||C!==M.length-1){if(N=\"+\",R)R()}else N=\"\";if(M){if(K=K.slice(0,-M.length),M[M.length-1]===`\n`)M=M.slice(0,-1);M=M.replace(z,`$&${A}`)}let E=!1,k,g=-1;for(k=0;k<K.length;++k){let P=K[k];if(P===\" \")E=!0;else if(P===`\n`)g=k;else break}let f=K.substring(0,g<k?g+1:k);if(f)K=K.substring(f.length),f=f.replace(/\\n+/g,`$&${A}`);let v=(E?A?\"2\":\"1\":\"\")+N;if(J){if(v+=\" \"+I(J.replace(/ ?[\\r\\n]+/g,\" \")),j)j()}if(!D){let P=K.replace(/\\n+/g,`\n$&`).replace(/(?:^|\\n)([\\t ].*)(?:([\\n\\t ]*)\\n(?![\\n\\t ]))?/g,\"$1$2\").replace(/\\n+/g,`$&${A}`),h=!1,x=B(F,!0);if(q!==\"folded\"&&W!==Q.Scalar.BLOCK_FOLDED)x.onOverflow=()=>{h=!0};let m=G.foldFlowLines(`${f}${P}${M}`,A,G.FOLD_BLOCK,x);if(!h)return`>${v}\n${A}${m}`}return K=K.replace(/\\n+/g,`$&${A}`),`|${v}\n${A}${f}${K}${M}`}function X(J,W,K,F){let{type:j,value:R}=J,{actualString:q,implicitKey:I,indent:L,indentStep:A,inFlow:D}=W;if(I&&R.includes(`\n`)||D&&/[[\\]{},]/.test(R))return H(R,W);if(/^[\\n\\t ,[\\]{}#&*!|>'\"%@`]|^[?-]$|^[?-][ \\t]|[\\n:][ \\t]|[ \\t]\\n|[\\n\\t ]#|[\\n\\t :]$/.test(R))return I||D||!R.includes(`\n`)?H(R,W):V(J,W,K,F);if(!I&&!D&&j!==Q.Scalar.PLAIN&&R.includes(`\n`))return V(J,W,K,F);if(O(R)){if(L===\"\")return W.forceBlockIndent=!0,V(J,W,K,F);else if(I&&L===A)return H(R,W)}let N=R.replace(/\\n+/g,`$&\n${L}`);if(q){let T=(E)=>E.default&&E.tag!==\"tag:yaml.org,2002:str\"&&E.test?.test(N),{compat:M,tags:C}=W.doc.schema;if(C.some(T)||M?.some(T))return H(R,W)}return I?N:G.foldFlowLines(N,L,G.FOLD_FLOW,B(W,!1))}function $(J,W,K,F){let{implicitKey:j,inFlow:R}=W,q=typeof J.value===\"string\"?J:Object.assign({},J,{value:String(J.value)}),{type:I}=J;if(I!==Q.Scalar.QUOTE_DOUBLE){if(/[\\x00-\\x08\\x0b-\\x1f\\x7f-\\x9f\\u{D800}-\\u{DFFF}]/u.test(q.value))I=Q.Scalar.QUOTE_DOUBLE}let L=(D)=>{switch(D){case Q.Scalar.BLOCK_FOLDED:case Q.Scalar.BLOCK_LITERAL:return j||R?H(q.value,W):V(q,W,K,F);case Q.Scalar.QUOTE_DOUBLE:return Y(q.value,W);case Q.Scalar.QUOTE_SINGLE:return U(q.value,W);case Q.Scalar.PLAIN:return X(q,W,K,F);default:return null}},A=L(I);if(A===null){let{defaultKeyType:D,defaultStringType:N}=W.options,T=j&&D||N;if(A=L(T),A===null)throw Error(`Unsupported default string type ${T}`)}return A}Z.stringifyString=$}),y0=S((Z)=>{var Q=e0(),G=y(),B=P0(),O=w0();function _(z,V){let X=Object.assign({blockQuote:!0,commentString:B.stringifyComment,defaultKeyType:null,defaultStringType:\"PLAIN\",directives:null,doubleQuotedAsJSON:!1,doubleQuotedMinMultiLineLength:40,falseStr:\"false\",flowCollectionPadding:!0,indentSeq:!0,lineWidth:80,minContentWidth:20,nullStr:\"null\",simpleKeys:!1,singleQuote:null,trailingComma:!1,trueStr:\"true\",verifyAliasOrder:!0},z.schema.toStringOptions,V),$;switch(X.collectionStyle){case\"block\":$=!1;break;case\"flow\":$=!0;break;default:$=null}return{anchors:new Set,doc:z,flowCollectionPadding:X.flowCollectionPadding?\" \":\"\",indent:\"\",indentStep:typeof X.indent===\"number\"?\" \".repeat(X.indent):\" \",inFlow:$,options:X}}function Y(z,V){if(V.tag){let J=z.filter((W)=>W.tag===V.tag);if(J.length>0)return J.find((W)=>W.format===V.format)??J[0]}let X=void 0,$;if(G.isScalar(V)){$=V.value;let J=z.filter((W)=>W.identify?.($));if(J.length>1){let W=J.filter((K)=>K.test);if(W.length>0)J=W}X=J.find((W)=>W.format===V.format)??J.find((W)=>!W.format)}else $=V,X=z.find((J)=>J.nodeClass&&$ instanceof J.nodeClass);if(!X){let J=$?.constructor?.name??($===null?\"null\":typeof $);throw Error(`Tag not resolved for ${J} value`)}return X}function U(z,V,{anchors:X,doc:$}){if(!$.directives)return\"\";let J=[],W=(G.isScalar(z)||G.isCollection(z))&&z.anchor;if(W&&Q.anchorIsValid(W))X.add(W),J.push(`&${W}`);let K=z.tag??(V.default?null:V.tag);if(K)J.push($.directives.tagString(K));return J.join(\" \")}function H(z,V,X,$){if(G.isPair(z))return z.toString(V,X,$);if(G.isAlias(z)){if(V.doc.directives)return z.toString(V);if(V.resolvedAliases?.has(z))throw TypeError(\"Cannot stringify circular structure without alias nodes\");else{if(V.resolvedAliases)V.resolvedAliases.add(z);else V.resolvedAliases=new Set([z]);z=z.resolve(V.doc)}}let J=void 0,W=G.isNode(z)?z:V.doc.createNode(z,{onTagObj:(j)=>J=j});J??(J=Y(V.doc.schema.tags,W));let K=U(W,J,V);if(K.length>0)V.indentAtStart=(V.indentAtStart??0)+K.length+1;let F=typeof J.stringify===\"function\"?J.stringify(W,V,X,$):G.isScalar(W)?O.stringifyString(W,V,X,$):W.toString(V,X,$);if(!K)return F;return G.isScalar(W)||F[0]===\"{\"||F[0]===\"[\"?`${K} ${F}`:`${K}\n${V.indent}${F}`}Z.createStringifyContext=_,Z.stringify=H}),d6=S((Z)=>{var Q=y(),G=b(),B=y0(),O=P0();function _({key:Y,value:U},H,z,V){let{allNullValues:X,doc:$,indent:J,indentStep:W,options:{commentString:K,indentSeq:F,simpleKeys:j}}=H,R=Q.isNode(Y)&&Y.comment||null;if(j){if(R)throw Error(\"With simple keys, key nodes cannot have comments\");if(Q.isCollection(Y)||!Q.isNode(Y)&&typeof Y===\"object\")throw Error(\"With simple keys, collection cannot be used as a key value\")}let q=!j&&(!Y||R&&U==null&&!H.inFlow||Q.isCollection(Y)||(Q.isScalar(Y)?Y.type===G.Scalar.BLOCK_FOLDED||Y.type===G.Scalar.BLOCK_LITERAL:typeof Y===\"object\"));H=Object.assign({},H,{allNullValues:!1,implicitKey:!q&&(j||!X),indent:J+W});let I=!1,L=!1,A=B.stringify(Y,H,()=>I=!0,()=>L=!0);if(!q&&!H.inFlow&&A.length>1024){if(j)throw Error(\"With simple keys, single line scalar must not span more than 1024 characters\");q=!0}if(H.inFlow){if(X||U==null){if(I&&z)z();return A===\"\"?\"?\":q?`? ${A}`:A}}else if(X&&!j||U==null&&q){if(A=`? ${A}`,R&&!I)A+=O.lineComment(A,H.indent,K(R));else if(L&&V)V();return A}if(I)R=null;if(q){if(R)A+=O.lineComment(A,H.indent,K(R));A=`? ${A}\n${J}:`}else if(A=`${A}:`,R)A+=O.lineComment(A,H.indent,K(R));let D,N,T;if(Q.isNode(U))D=!!U.spaceBefore,N=U.commentBefore,T=U.comment;else if(D=!1,N=null,T=null,U&&typeof U===\"object\")U=$.createNode(U);if(H.implicitKey=!1,!q&&!R&&Q.isScalar(U))H.indentAtStart=A.length+1;if(L=!1,!F&&W.length>=2&&!H.inFlow&&!q&&Q.isSeq(U)&&!U.flow&&!U.tag&&!U.anchor)H.indent=H.indent.substring(2);let M=!1,C=B.stringify(U,H,()=>M=!0,()=>L=!0),E=\" \";if(R||D||N){if(E=D?`\n`:\"\",N){let k=K(N);E+=`\n${O.indentComment(k,H.indent)}`}if(C===\"\"&&!H.inFlow){if(E===`\n`&&T)E=`\n\n`}else E+=`\n${H.indent}`}else if(!q&&Q.isCollection(U)){let k=C[0],g=C.indexOf(`\n`),f=g!==-1,l=H.inFlow??U.flow??U.items.length===0;if(f||!l){let v=!1;if(f&&(k===\"&\"||k===\"!\")){let P=C.indexOf(\" \");if(k===\"&\"&&P!==-1&&P<g&&C[P+1]===\"!\")P=C.indexOf(\" \",P+1);if(P===-1||g<P)v=!0}if(!v)E=`\n${H.indent}`}}else if(C===\"\"||C[0]===`\n`)E=\"\";if(A+=E+C,H.inFlow){if(M&&z)z()}else if(T&&!M)A+=O.lineComment(A,H.indent,K(T));else if(L&&V)V();return A}Z.stringifyPair=_}),xZ=S((Z)=>{var Q=T0(\"process\");function G(O,..._){if(O===\"debug\")console.log(..._)}function B(O,_){if(O===\"debug\"||O===\"warn\")if(typeof Q.emitWarning===\"function\")Q.emitWarning(_);else console.warn(_)}Z.debug=G,Z.warn=B}),$Z=S((Z)=>{var Q=y(),G=b(),B=\"<<\",O={identify:(H)=>H===B||typeof H===\"symbol\"&&H.description===B,default:\"key\",tag:\"tag:yaml.org,2002:merge\",test:/^<<$/,resolve:()=>Object.assign(new G.Scalar(Symbol(B)),{addToJSMap:Y}),stringify:()=>B},_=(H,z)=>(O.identify(z)||Q.isScalar(z)&&(!z.type||z.type===G.Scalar.PLAIN)&&O.identify(z.value))&&H?.doc.schema.tags.some((V)=>V.tag===O.tag&&V.default);function Y(H,z,V){if(V=H&&Q.isAlias(V)?V.resolve(H.doc):V,Q.isSeq(V))for(let X of V.items)U(H,z,X);else if(Array.isArray(V))for(let X of V)U(H,z,X);else U(H,z,V)}function U(H,z,V){let X=H&&Q.isAlias(V)?V.resolve(H.doc):V;if(!Q.isMap(X))throw Error(\"Merge sources must be maps or map aliases\");let $=X.toJSON(null,H,Map);for(let[J,W]of $)if(z instanceof Map){if(!z.has(J))z.set(J,W)}else if(z instanceof Set)z.add(J);else if(!Object.prototype.hasOwnProperty.call(z,J))Object.defineProperty(z,J,{value:W,writable:!0,enumerable:!0,configurable:!0});return z}Z.addMergeToJSMap=Y,Z.isMergeKey=_,Z.merge=O}),fZ=S((Z)=>{var Q=xZ(),G=$Z(),B=y0(),O=y(),_=X0();function Y(H,z,{key:V,value:X}){if(O.isNode(V)&&V.addToJSMap)V.addToJSMap(H,z,X);else if(G.isMergeKey(H,V))G.addMergeToJSMap(H,z,X);else{let $=_.toJS(V,\"\",H);if(z instanceof Map)z.set($,_.toJS(X,$,H));else if(z instanceof Set)z.add($);else{let J=U(V,$,H),W=_.toJS(X,J,H);if(J in z)Object.defineProperty(z,J,{value:W,writable:!0,enumerable:!0,configurable:!0});else z[J]=W}}return z}function U(H,z,V){if(z===null)return\"\";if(typeof z!==\"object\")return String(z);if(O.isNode(H)&&V?.doc){let X=B.createStringifyContext(V.doc,{});X.anchors=new Set;for(let J of V.anchors.keys())X.anchors.add(J.anchor);X.inFlow=!0,X.inStringifyKey=!0;let $=H.toString(X);if(!V.mapKeyWarned){let J=JSON.stringify($);if(J.length>40)J=J.substring(0,36)+'...\"';Q.warn(V.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${J}. Set mapAsMap: true to use object keys.`),V.mapKeyWarned=!0}return $}return JSON.stringify(z)}Z.addPairToJSMap=Y}),$0=S((Z)=>{var Q=E0(),G=d6(),B=fZ(),O=y();function _(U,H,z){let V=Q.createNode(U,void 0,z),X=Q.createNode(H,void 0,z);return new Y(V,X)}class Y{constructor(U,H=null){Object.defineProperty(this,O.NODE_TYPE,{value:O.PAIR}),this.key=U,this.value=H}clone(U){let{key:H,value:z}=this;if(O.isNode(H))H=H.clone(U);if(O.isNode(z))z=z.clone(U);return new Y(H,z)}toJSON(U,H){let z=H?.mapAsMap?new Map:{};return B.addPairToJSMap(H,z,this)}toString(U,H,z){return U?.doc?G.stringifyPair(this,U,H,z):JSON.stringify(this)}}Z.Pair=Y,Z.createPair=_}),gZ=S((Z)=>{var Q=y(),G=y0(),B=P0();function O(H,z,V){return(z.inFlow??H.flow?Y:_)(H,z,V)}function _({comment:H,items:z},V,{blockItemPrefix:X,flowChars:$,itemIndent:J,onChompKeep:W,onComment:K}){let{indent:F,options:{commentString:j}}=V,R=Object.assign({},V,{indent:J,type:null}),q=!1,I=[];for(let A=0;A<z.length;++A){let D=z[A],N=null;if(Q.isNode(D)){if(!q&&D.spaceBefore)I.push(\"\");if(U(V,I,D.commentBefore,q),D.comment)N=D.comment}else if(Q.isPair(D)){let M=Q.isNode(D.key)?D.key:null;if(M){if(!q&&M.spaceBefore)I.push(\"\");U(V,I,M.commentBefore,q)}}q=!1;let T=G.stringify(D,R,()=>N=null,()=>q=!0);if(N)T+=B.lineComment(T,J,j(N));if(q&&N)q=!1;I.push(X+T)}let L;if(I.length===0)L=$.start+$.end;else{L=I[0];for(let A=1;A<I.length;++A){let D=I[A];L+=D?`\n${F}${D}`:`\n`}}if(H){if(L+=`\n`+B.indentComment(j(H),F),K)K()}else if(q&&W)W();return L}function Y({items:H},z,{flowChars:V,itemIndent:X}){let{indent:$,indentStep:J,flowCollectionPadding:W,options:{commentString:K}}=z;X+=J;let F=Object.assign({},z,{indent:X,inFlow:!0,type:null}),j=!1,R=0,q=[];for(let A=0;A<H.length;++A){let D=H[A],N=null;if(Q.isNode(D)){if(D.spaceBefore)q.push(\"\");if(U(z,q,D.commentBefore,!1),D.comment)N=D.comment}else if(Q.isPair(D)){let M=Q.isNode(D.key)?D.key:null;if(M){if(M.spaceBefore)q.push(\"\");if(U(z,q,M.commentBefore,!1),M.comment)j=!0}let C=Q.isNode(D.value)?D.value:null;if(C){if(C.comment)N=C.comment;if(C.commentBefore)j=!0}else if(D.value==null&&M?.comment)N=M.comment}if(N)j=!0;let T=G.stringify(D,F,()=>N=null);if(j||(j=q.length>R||T.includes(`\n`)),A<H.length-1)T+=\",\";else if(z.options.trailingComma){if(z.options.lineWidth>0)j||(j=q.reduce((M,C)=>M+C.length+2,2)+(T.length+2)>z.options.lineWidth);if(j)T+=\",\"}if(N)T+=B.lineComment(T,X,K(N));q.push(T),R=q.length}let{start:I,end:L}=V;if(q.length===0)return I+L;else{if(!j){let A=q.reduce((D,N)=>D+N.length+2,2);j=z.options.lineWidth>0&&A>z.options.lineWidth}if(j){let A=I;for(let D of q)A+=D?`\n${J}${$}${D}`:`\n`;return`${A}\n${$}${L}`}else return`${I}${W}${q.join(\" \")}${W}${L}`}}function U({indent:H,options:{commentString:z}},V,X,$){if(X&&$)X=X.replace(/^\\n+/,\"\");if(X){let J=B.indentComment(z(X),H);V.push(J.trimStart())}}Z.stringifyCollection=O}),z0=S((Z)=>{var Q=gZ(),G=fZ(),B=XZ(),O=y(),_=$0(),Y=b();function U(z,V){let X=O.isScalar(V)?V.value:V;for(let $ of z)if(O.isPair($)){if($.key===V||$.key===X)return $;if(O.isScalar($.key)&&$.key.value===X)return $}return}class H extends B.Collection{static get tagName(){return\"tag:yaml.org,2002:map\"}constructor(z){super(O.MAP,z);this.items=[]}static from(z,V,X){let{keepUndefined:$,replacer:J}=X,W=new this(z),K=(F,j)=>{if(typeof J===\"function\")j=J.call(V,F,j);else if(Array.isArray(J)&&!J.includes(F))return;if(j!==void 0||$)W.items.push(_.createPair(F,j,X))};if(V instanceof Map)for(let[F,j]of V)K(F,j);else if(V&&typeof V===\"object\")for(let F of Object.keys(V))K(F,V[F]);if(typeof z.sortMapEntries===\"function\")W.items.sort(z.sortMapEntries);return W}add(z,V){let X;if(O.isPair(z))X=z;else if(!z||typeof z!==\"object\"||!(\"key\"in z))X=new _.Pair(z,z?.value);else X=new _.Pair(z.key,z.value);let $=U(this.items,X.key),J=this.schema?.sortMapEntries;if($){if(!V)throw Error(`Key ${X.key} already set`);if(O.isScalar($.value)&&Y.isScalarValue(X.value))$.value.value=X.value;else $.value=X.value}else if(J){let W=this.items.findIndex((K)=>J(X,K)<0);if(W===-1)this.items.push(X);else this.items.splice(W,0,X)}else this.items.push(X)}delete(z){let V=U(this.items,z);if(!V)return!1;return this.items.splice(this.items.indexOf(V),1).length>0}get(z,V){let $=U(this.items,z)?.value;return(!V&&O.isScalar($)?$.value:$)??void 0}has(z){return!!U(this.items,z)}set(z,V){this.add(new _.Pair(z,V),!0)}toJSON(z,V,X){let $=X?new X:V?.mapAsMap?new Map:{};if(V?.onCreate)V.onCreate($);for(let J of this.items)G.addPairToJSMap(V,$,J);return $}toString(z,V,X){if(!z)return JSON.stringify(this);for(let $ of this.items)if(!O.isPair($))throw Error(`Map items must all be pairs; found ${JSON.stringify($)} instead`);if(!z.allNullValues&&this.hasAllNullValues(!1))z=Object.assign({},z,{allNullValues:!0});return Q.stringifyCollection(this,z,{blockItemPrefix:\"\",flowChars:{start:\"{\",end:\"}\"},itemIndent:z.indent||\"\",onChompKeep:X,onComment:V})}}Z.YAMLMap=H,Z.findPair=U}),K0=S((Z)=>{var Q=y(),G=z0(),B={collection:\"map\",default:!0,nodeClass:G.YAMLMap,tag:\"tag:yaml.org,2002:map\",resolve(O,_){if(!Q.isMap(O))_(\"Expected a mapping for this tag\");return O},createNode:(O,_,Y)=>G.YAMLMap.from(O,_,Y)};Z.map=B}),Q0=S((Z)=>{var Q=E0(),G=gZ(),B=XZ(),O=y(),_=b(),Y=X0();class U extends B.Collection{static get tagName(){return\"tag:yaml.org,2002:seq\"}constructor(z){super(O.SEQ,z);this.items=[]}add(z){this.items.push(z)}delete(z){let V=H(z);if(typeof V!==\"number\")return!1;return this.items.splice(V,1).length>0}get(z,V){let X=H(z);if(typeof X!==\"number\")return;let $=this.items[X];return!V&&O.isScalar($)?$.value:$}has(z){let V=H(z);return typeof V===\"number\"&&V<this.items.length}set(z,V){let X=H(z);if(typeof X!==\"number\")throw Error(`Expected a valid index, not ${z}.`);let $=this.items[X];if(O.isScalar($)&&_.isScalarValue(V))$.value=V;else this.items[X]=V}toJSON(z,V){let X=[];if(V?.onCreate)V.onCreate(X);let $=0;for(let J of this.items)X.push(Y.toJS(J,String($++),V));return X}toString(z,V,X){if(!z)return JSON.stringify(this);return G.stringifyCollection(this,z,{blockItemPrefix:\"- \",flowChars:{start:\"[\",end:\"]\"},itemIndent:(z.indent||\"\")+\" \",onChompKeep:X,onComment:V})}static from(z,V,X){let{replacer:$}=X,J=new this(z);if(V&&Symbol.iterator in Object(V)){let W=0;for(let K of V){if(typeof $===\"function\"){let F=V instanceof Set?K:String(W++);K=$.call(V,F,K)}J.items.push(Q.createNode(K,void 0,X))}}return J}}function H(z){let V=O.isScalar(z)?z.value:z;if(V&&typeof V===\"string\")V=Number(V);return typeof V===\"number\"&&Number.isInteger(V)&&V>=0?V:null}Z.YAMLSeq=U}),_0=S((Z)=>{var Q=y(),G=Q0(),B={collection:\"seq\",default:!0,nodeClass:G.YAMLSeq,tag:\"tag:yaml.org,2002:seq\",resolve(O,_){if(!Q.isSeq(O))_(\"Expected a sequence for this tag\");return O},createNode:(O,_,Y)=>G.YAMLSeq.from(O,_,Y)};Z.seq=B}),k0=S((Z)=>{var Q=w0(),G={identify:(B)=>typeof B===\"string\",default:!0,tag:\"tag:yaml.org,2002:str\",resolve:(B)=>B,stringify(B,O,_,Y){return O=Object.assign({actualString:!0},O),Q.stringifyString(B,O,_,Y)}};Z.string=G}),zZ=S((Z)=>{var Q=b(),G={identify:(B)=>B==null,createNode:()=>new Q.Scalar(null),default:!0,tag:\"tag:yaml.org,2002:null\",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new Q.Scalar(null),stringify:({source:B},O)=>typeof B===\"string\"&&G.test.test(B)?B:O.options.nullStr};Z.nullTag=G}),vZ=S((Z)=>{var Q=b(),G={identify:(B)=>typeof B===\"boolean\",default:!0,tag:\"tag:yaml.org,2002:bool\",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:(B)=>new Q.Scalar(B[0]===\"t\"||B[0]===\"T\"),stringify({source:B,value:O},_){if(B&&G.test.test(B)){let Y=B[0]===\"t\"||B[0]===\"T\";if(O===Y)return B}return O?_.options.trueStr:_.options.falseStr}};Z.boolTag=G}),O0=S((Z)=>{function Q({format:G,minFractionDigits:B,tag:O,value:_}){if(typeof _===\"bigint\")return String(_);let Y=typeof _===\"number\"?_:Number(_);if(!isFinite(Y))return isNaN(Y)?\".nan\":Y<0?\"-.inf\":\".inf\";let U=Object.is(_,-0)?\"-0\":JSON.stringify(_);if(!G&&B&&(!O||O===\"tag:yaml.org,2002:float\")&&/^\\d/.test(U)){let H=U.indexOf(\".\");if(H<0)H=U.length,U+=\".\";let z=B-(U.length-H-1);while(z-- >0)U+=\"0\"}return U}Z.stringifyNumber=Q}),bZ=S((Z)=>{var Q=b(),G=O0(),B={identify:(Y)=>typeof Y===\"number\",default:!0,tag:\"tag:yaml.org,2002:float\",test:/^(?:[-+]?\\.(?:inf|Inf|INF)|\\.nan|\\.NaN|\\.NAN)$/,resolve:(Y)=>Y.slice(-3).toLowerCase()===\"nan\"?NaN:Y[0]===\"-\"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:G.stringifyNumber},O={identify:(Y)=>typeof Y===\"number\",default:!0,tag:\"tag:yaml.org,2002:float\",format:\"EXP\",test:/^[-+]?(?:\\.[0-9]+|[0-9]+(?:\\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:(Y)=>parseFloat(Y),stringify(Y){let U=Number(Y.value);return isFinite(U)?U.toExponential():G.stringifyNumber(Y)}},_={identify:(Y)=>typeof Y===\"number\",default:!0,tag:\"tag:yaml.org,2002:float\",test:/^[-+]?(?:\\.[0-9]+|[0-9]+\\.[0-9]*)$/,resolve(Y){let U=new Q.Scalar(parseFloat(Y)),H=Y.indexOf(\".\");if(H!==-1&&Y[Y.length-1]===\"0\")U.minFractionDigits=Y.length-H-1;return U},stringify:G.stringifyNumber};Z.float=_,Z.floatExp=O,Z.floatNaN=B}),hZ=S((Z)=>{var Q=O0(),G=(H)=>typeof H===\"bigint\"||Number.isInteger(H),B=(H,z,V,{intAsBigInt:X})=>X?BigInt(H):parseInt(H.substring(z),V);function O(H,z,V){let{value:X}=H;if(G(X)&&X>=0)return V+X.toString(z);return Q.stringifyNumber(H)}var _={identify:(H)=>G(H)&&H>=0,default:!0,tag:\"tag:yaml.org,2002:int\",format:\"OCT\",test:/^0o[0-7]+$/,resolve:(H,z,V)=>B(H,2,8,V),stringify:(H)=>O(H,8,\"0o\")},Y={identify:G,default:!0,tag:\"tag:yaml.org,2002:int\",test:/^[-+]?[0-9]+$/,resolve:(H,z,V)=>B(H,0,10,V),stringify:Q.stringifyNumber},U={identify:(H)=>G(H)&&H>=0,default:!0,tag:\"tag:yaml.org,2002:int\",format:\"HEX\",test:/^0x[0-9a-fA-F]+$/,resolve:(H,z,V)=>B(H,2,16,V),stringify:(H)=>O(H,16,\"0x\")};Z.int=Y,Z.intHex=U,Z.intOct=_}),l6=S((Z)=>{var Q=K0(),G=zZ(),B=_0(),O=k0(),_=vZ(),Y=bZ(),U=hZ(),H=[Q.map,B.seq,O.string,G.nullTag,_.boolTag,U.intOct,U.int,U.intHex,Y.floatNaN,Y.floatExp,Y.float];Z.schema=H}),c6=S((Z)=>{var Q=b(),G=K0(),B=_0();function O(z){return typeof z===\"bigint\"||Number.isInteger(z)}var _=({value:z})=>JSON.stringify(z),Y=[{identify:(z)=>typeof z===\"string\",default:!0,tag:\"tag:yaml.org,2002:str\",resolve:(z)=>z,stringify:_},{identify:(z)=>z==null,createNode:()=>new Q.Scalar(null),default:!0,tag:\"tag:yaml.org,2002:null\",test:/^null$/,resolve:()=>null,stringify:_},{identify:(z)=>typeof z===\"boolean\",default:!0,tag:\"tag:yaml.org,2002:bool\",test:/^true$|^false$/,resolve:(z)=>z===\"true\",stringify:_},{identify:O,default:!0,tag:\"tag:yaml.org,2002:int\",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:(z,V,{intAsBigInt:X})=>X?BigInt(z):parseInt(z,10),stringify:({value:z})=>O(z)?z.toString():JSON.stringify(z)},{identify:(z)=>typeof z===\"number\",default:!0,tag:\"tag:yaml.org,2002:float\",test:/^-?(?:0|[1-9][0-9]*)(?:\\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:(z)=>parseFloat(z),stringify:_}],U={default:!0,tag:\"\",test:/^/,resolve(z,V){return V(`Unresolved plain scalar ${JSON.stringify(z)}`),z}},H=[G.map,B.seq].concat(Y,U);Z.schema=H}),mZ=S((Z)=>{var Q=T0(\"buffer\"),G=b(),B=w0(),O={identify:(_)=>_ instanceof Uint8Array,default:!1,tag:\"tag:yaml.org,2002:binary\",resolve(_,Y){if(typeof Q.Buffer===\"function\")return Q.Buffer.from(_,\"base64\");else if(typeof atob===\"function\"){let U=atob(_.replace(/[\\n\\r]/g,\"\")),H=new Uint8Array(U.length);for(let z=0;z<U.length;++z)H[z]=U.charCodeAt(z);return H}else return Y(\"This environment does not support reading binary tags; either Buffer or atob is required\"),_},stringify({comment:_,type:Y,value:U},H,z,V){if(!U)return\"\";let X=U,$;if(typeof Q.Buffer===\"function\")$=X instanceof Q.Buffer?X.toString(\"base64\"):Q.Buffer.from(X.buffer).toString(\"base64\");else if(typeof btoa===\"function\"){let J=\"\";for(let W=0;W<X.length;++W)J+=String.fromCharCode(X[W]);$=btoa(J)}else throw Error(\"This environment does not support writing binary tags; either Buffer or btoa is required\");if(Y??(Y=G.Scalar.BLOCK_LITERAL),Y!==G.Scalar.QUOTE_DOUBLE){let J=Math.max(H.options.lineWidth-H.indent.length,H.options.minContentWidth),W=Math.ceil($.length/J),K=Array(W);for(let F=0,j=0;F<W;++F,j+=J)K[F]=$.substr(j,J);$=K.join(Y===G.Scalar.BLOCK_LITERAL?`\n`:\" \")}return B.stringifyString({comment:_,type:Y,value:$},H,z,V)}};Z.binary=O}),QZ=S((Z)=>{var Q=y(),G=$0(),B=b(),O=Q0();function _(H,z){if(Q.isSeq(H))for(let V=0;V<H.items.length;++V){let X=H.items[V];if(Q.isPair(X))continue;else if(Q.isMap(X)){if(X.items.length>1)z(\"Each pair must have its own sequence indicator\");let $=X.items[0]||new G.Pair(new B.Scalar(null));if(X.commentBefore)$.key.commentBefore=$.key.commentBefore?`${X.commentBefore}\n${$.key.commentBefore}`:X.commentBefore;if(X.comment){let J=$.value??$.key;J.comment=J.comment?`${X.comment}\n${J.comment}`:X.comment}X=$}H.items[V]=Q.isPair(X)?X:new G.Pair(X)}else z(\"Expected a sequence for this tag\");return H}function Y(H,z,V){let{replacer:X}=V,$=new O.YAMLSeq(H);$.tag=\"tag:yaml.org,2002:pairs\";let J=0;if(z&&Symbol.iterator in Object(z))for(let W of z){if(typeof X===\"function\")W=X.call(z,String(J++),W);let K,F;if(Array.isArray(W))if(W.length===2)K=W[0],F=W[1];else throw TypeError(`Expected [key, value] tuple: ${W}`);else if(W&&W instanceof Object){let j=Object.keys(W);if(j.length===1)K=j[0],F=W[K];else throw TypeError(`Expected tuple with one key, not ${j.length} keys`)}else K=W;$.items.push(G.createPair(K,F,V))}return $}var U={collection:\"seq\",default:!1,tag:\"tag:yaml.org,2002:pairs\",resolve:_,createNode:Y};Z.createPairs=Y,Z.pairs=U,Z.resolvePairs=_}),uZ=S((Z)=>{var Q=y(),G=X0(),B=z0(),O=Q0(),_=QZ();class Y extends O.YAMLSeq{constructor(){super();this.add=B.YAMLMap.prototype.add.bind(this),this.delete=B.YAMLMap.prototype.delete.bind(this),this.get=B.YAMLMap.prototype.get.bind(this),this.has=B.YAMLMap.prototype.has.bind(this),this.set=B.YAMLMap.prototype.set.bind(this),this.tag=Y.tag}toJSON(H,z){if(!z)return super.toJSON(H);let V=new Map;if(z?.onCreate)z.onCreate(V);for(let X of this.items){let $,J;if(Q.isPair(X))$=G.toJS(X.key,\"\",z),J=G.toJS(X.value,$,z);else $=G.toJS(X,\"\",z);if(V.has($))throw Error(\"Ordered maps must not include duplicate keys\");V.set($,J)}return V}static from(H,z,V){let X=_.createPairs(H,z,V),$=new this;return $.items=X.items,$}}Y.tag=\"tag:yaml.org,2002:omap\";var U={collection:\"seq\",identify:(H)=>H instanceof Map,nodeClass:Y,default:!1,tag:\"tag:yaml.org,2002:omap\",resolve(H,z){let V=_.resolvePairs(H,z),X=[];for(let{key:$}of V.items)if(Q.isScalar($))if(X.includes($.value))z(`Ordered maps must not include duplicate keys: ${$.value}`);else X.push($.value);return Object.assign(new Y,V)},createNode:(H,z,V)=>Y.from(H,z,V)};Z.YAMLOMap=Y,Z.omap=U}),i6=S((Z)=>{var Q=b();function G({value:_,source:Y},U){if(Y&&(_?B:O).test.test(Y))return Y;return _?U.options.trueStr:U.options.falseStr}var B={identify:(_)=>_===!0,default:!0,tag:\"tag:yaml.org,2002:bool\",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new Q.Scalar(!0),stringify:G},O={identify:(_)=>_===!1,default:!0,tag:\"tag:yaml.org,2002:bool\",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new Q.Scalar(!1),stringify:G};Z.falseTag=O,Z.trueTag=B}),n6=S((Z)=>{var Q=b(),G=O0(),B={identify:(Y)=>typeof Y===\"number\",default:!0,tag:\"tag:yaml.org,2002:float\",test:/^(?:[-+]?\\.(?:inf|Inf|INF)|\\.nan|\\.NaN|\\.NAN)$/,resolve:(Y)=>Y.slice(-3).toLowerCase()===\"nan\"?NaN:Y[0]===\"-\"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:G.stringifyNumber},O={identify:(Y)=>typeof Y===\"number\",default:!0,tag:\"tag:yaml.org,2002:float\",format:\"EXP\",test:/^[-+]?(?:[0-9][0-9_]*)?(?:\\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:(Y)=>parseFloat(Y.replace(/_/g,\"\")),stringify(Y){let U=Number(Y.value);return isFinite(U)?U.toExponential():G.stringifyNumber(Y)}},_={identify:(Y)=>typeof Y===\"number\",default:!0,tag:\"tag:yaml.org,2002:float\",test:/^[-+]?(?:[0-9][0-9_]*)?\\.[0-9_]*$/,resolve(Y){let U=new Q.Scalar(parseFloat(Y.replace(/_/g,\"\"))),H=Y.indexOf(\".\");if(H!==-1){let z=Y.substring(H+1).replace(/_/g,\"\");if(z[z.length-1]===\"0\")U.minFractionDigits=z.length}return U},stringify:G.stringifyNumber};Z.float=_,Z.floatExp=O,Z.floatNaN=B}),s6=S((Z)=>{var Q=O0(),G=(z)=>typeof z===\"bigint\"||Number.isInteger(z);function B(z,V,X,{intAsBigInt:$}){let J=z[0];if(J===\"-\"||J===\"+\")V+=1;if(z=z.substring(V).replace(/_/g,\"\"),$){switch(X){case 2:z=`0b${z}`;break;case 8:z=`0o${z}`;break;case 16:z=`0x${z}`;break}let K=BigInt(z);return J===\"-\"?BigInt(-1)*K:K}let W=parseInt(z,X);return J===\"-\"?-1*W:W}function O(z,V,X){let{value:$}=z;if(G($)){let J=$.toString(V);return $<0?\"-\"+X+J.substr(1):X+J}return Q.stringifyNumber(z)}var _={identify:G,default:!0,tag:\"tag:yaml.org,2002:int\",format:\"BIN\",test:/^[-+]?0b[0-1_]+$/,resolve:(z,V,X)=>B(z,2,2,X),stringify:(z)=>O(z,2,\"0b\")},Y={identify:G,default:!0,tag:\"tag:yaml.org,2002:int\",format:\"OCT\",test:/^[-+]?0[0-7_]+$/,resolve:(z,V,X)=>B(z,1,8,X),stringify:(z)=>O(z,8,\"0\")},U={identify:G,default:!0,tag:\"tag:yaml.org,2002:int\",test:/^[-+]?[0-9][0-9_]*$/,resolve:(z,V,X)=>B(z,0,10,X),stringify:Q.stringifyNumber},H={identify:G,default:!0,tag:\"tag:yaml.org,2002:int\",format:\"HEX\",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:(z,V,X)=>B(z,2,16,X),stringify:(z)=>O(z,16,\"0x\")};Z.int=U,Z.intBin=_,Z.intHex=H,Z.intOct=Y}),pZ=S((Z)=>{var Q=y(),G=$0(),B=z0();class O extends B.YAMLMap{constructor(Y){super(Y);this.tag=O.tag}add(Y){let U;if(Q.isPair(Y))U=Y;else if(Y&&typeof Y===\"object\"&&\"key\"in Y&&\"value\"in Y&&Y.value===null)U=new G.Pair(Y.key,null);else U=new G.Pair(Y,null);if(!B.findPair(this.items,U.key))this.items.push(U)}get(Y,U){let H=B.findPair(this.items,Y);return!U&&Q.isPair(H)?Q.isScalar(H.key)?H.key.value:H.key:H}set(Y,U){if(typeof U!==\"boolean\")throw Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof U}`);let H=B.findPair(this.items,Y);if(H&&!U)this.items.splice(this.items.indexOf(H),1);else if(!H&&U)this.items.push(new G.Pair(Y))}toJSON(Y,U){return super.toJSON(Y,U,Set)}toString(Y,U,H){if(!Y)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},Y,{allNullValues:!0}),U,H);else throw Error(\"Set items must all have null values\")}static from(Y,U,H){let{replacer:z}=H,V=new this(Y);if(U&&Symbol.iterator in Object(U))for(let X of U){if(typeof z===\"function\")X=z.call(U,X,X);V.items.push(G.createPair(X,null,H))}return V}}O.tag=\"tag:yaml.org,2002:set\";var _={collection:\"map\",identify:(Y)=>Y instanceof Set,nodeClass:O,default:!1,tag:\"tag:yaml.org,2002:set\",createNode:(Y,U,H)=>O.from(Y,U,H),resolve(Y,U){if(Q.isMap(Y))if(Y.hasAllNullValues(!0))return Object.assign(new O,Y);else U(\"Set items must all have null values\");else U(\"Expected a mapping for this tag\");return Y}};Z.YAMLSet=O,Z.set=_}),dZ=S((Z)=>{var Q=O0();function G(U,H){let z=U[0],V=z===\"-\"||z===\"+\"?U.substring(1):U,X=(J)=>H?BigInt(J):Number(J),$=V.replace(/_/g,\"\").split(\":\").reduce((J,W)=>J*X(60)+X(W),X(0));return z===\"-\"?X(-1)*$:$}function B(U){let{value:H}=U,z=(J)=>J;if(typeof H===\"bigint\")z=(J)=>BigInt(J);else if(isNaN(H)||!isFinite(H))return Q.stringifyNumber(U);let V=\"\";if(H<0)V=\"-\",H*=z(-1);let X=z(60),$=[H%X];if(H<60)$.unshift(0);else if(H=(H-$[0])/X,$.unshift(H%X),H>=60)H=(H-$[0])/X,$.unshift(H);return V+$.map((J)=>String(J).padStart(2,\"0\")).join(\":\").replace(/000000\\d*$/,\"\")}var O={identify:(U)=>typeof U===\"bigint\"||Number.isInteger(U),default:!0,tag:\"tag:yaml.org,2002:int\",format:\"TIME\",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/,resolve:(U,H,{intAsBigInt:z})=>G(U,z),stringify:B},_={identify:(U)=>typeof U===\"number\",default:!0,tag:\"tag:yaml.org,2002:float\",format:\"TIME\",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\.[0-9_]*$/,resolve:(U)=>G(U,!1),stringify:B},Y={identify:(U)=>U instanceof Date,default:!0,tag:\"tag:yaml.org,2002:timestamp\",test:RegExp(\"^([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\\\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\\\.[0-9]+)?)(?:[ \\\\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?$\"),resolve(U){let H=U.match(Y.test);if(!H)throw Error(\"!!timestamp expects a date, starting with yyyy-mm-dd\");let[,z,V,X,$,J,W]=H.map(Number),K=H[7]?Number((H[7]+\"00\").substr(1,3)):0,F=Date.UTC(z,V-1,X,$||0,J||0,W||0,K),j=H[8];if(j&&j!==\"Z\"){let R=G(j,!1);if(Math.abs(R)<30)R*=60;F-=60000*R}return new Date(F)},stringify:({value:U})=>U?.toISOString().replace(/(T00:00:00)?\\.000Z$/,\"\")??\"\"};Z.floatTime=_,Z.intTime=O,Z.timestamp=Y}),a6=S((Z)=>{var Q=K0(),G=zZ(),B=_0(),O=k0(),_=mZ(),Y=i6(),U=n6(),H=s6(),z=$Z(),V=uZ(),X=QZ(),$=pZ(),J=dZ(),W=[Q.map,B.seq,O.string,G.nullTag,Y.trueTag,Y.falseTag,H.intBin,H.intOct,H.int,H.intHex,U.floatNaN,U.floatExp,U.float,_.binary,z.merge,V.omap,X.pairs,$.set,J.intTime,J.floatTime,J.timestamp];Z.schema=W}),r6=S((Z)=>{var Q=K0(),G=zZ(),B=_0(),O=k0(),_=vZ(),Y=bZ(),U=hZ(),H=l6(),z=c6(),V=mZ(),X=$Z(),$=uZ(),J=QZ(),W=a6(),K=pZ(),F=dZ(),j=new Map([[\"core\",H.schema],[\"failsafe\",[Q.map,B.seq,O.string]],[\"json\",z.schema],[\"yaml11\",W.schema],[\"yaml-1.1\",W.schema]]),R={binary:V.binary,bool:_.boolTag,float:Y.float,floatExp:Y.floatExp,floatNaN:Y.floatNaN,floatTime:F.floatTime,int:U.int,intHex:U.intHex,intOct:U.intOct,intTime:F.intTime,map:Q.map,merge:X.merge,null:G.nullTag,omap:$.omap,pairs:J.pairs,seq:B.seq,set:K.set,timestamp:F.timestamp},q={\"tag:yaml.org,2002:binary\":V.binary,\"tag:yaml.org,2002:merge\":X.merge,\"tag:yaml.org,2002:omap\":$.omap,\"tag:yaml.org,2002:pairs\":J.pairs,\"tag:yaml.org,2002:set\":K.set,\"tag:yaml.org,2002:timestamp\":F.timestamp};function I(L,A,D){let N=j.get(A);if(N&&!L)return D&&!N.includes(X.merge)?N.concat(X.merge):N.slice();let T=N;if(!T)if(Array.isArray(L))T=[];else{let M=Array.from(j.keys()).filter((C)=>C!==\"yaml11\").map((C)=>JSON.stringify(C)).join(\", \");throw Error(`Unknown schema \"${A}\"; use one of ${M} or define customTags array`)}if(Array.isArray(L))for(let M of L)T=T.concat(M);else if(typeof L===\"function\")T=L(T.slice());if(D)T=T.concat(X.merge);return T.reduce((M,C)=>{let E=typeof C===\"string\"?R[C]:C;if(!E){let k=JSON.stringify(C),g=Object.keys(R).map((f)=>JSON.stringify(f)).join(\", \");throw Error(`Unknown custom tag ${k}; use one of ${g}`)}if(!M.includes(E))M.push(E);return M},[])}Z.coreKnownTags=q,Z.getTags=I}),lZ=S((Z)=>{var Q=y(),G=K0(),B=_0(),O=k0(),_=r6(),Y=(H,z)=>H.key<z.key?-1:H.key>z.key?1:0;class U{constructor({compat:H,customTags:z,merge:V,resolveKnownTags:X,schema:$,sortMapEntries:J,toStringDefaults:W}){this.compat=Array.isArray(H)?_.getTags(H,\"compat\"):H?_.getTags(null,H):null,this.name=typeof $===\"string\"&&$||\"core\",this.knownTags=X?_.coreKnownTags:{},this.tags=_.getTags(z,this.name,V),this.toStringOptions=W??null,Object.defineProperty(this,Q.MAP,{value:G.map}),Object.defineProperty(this,Q.SCALAR,{value:O.string}),Object.defineProperty(this,Q.SEQ,{value:B.seq}),this.sortMapEntries=typeof J===\"function\"?J:J===!0?Y:null}clone(){let H=Object.create(U.prototype,Object.getOwnPropertyDescriptors(this));return H.tags=this.tags.slice(),H}}Z.Schema=U}),o6=S((Z)=>{var Q=y(),G=y0(),B=P0();function O(_,Y){let U=[],H=Y.directives===!0;if(Y.directives!==!1&&_.directives){let J=_.directives.toString(_);if(J)U.push(J),H=!0;else if(_.directives.docStart)H=!0}if(H)U.push(\"---\");let z=G.createStringifyContext(_,Y),{commentString:V}=z.options;if(_.commentBefore){if(U.length!==1)U.unshift(\"\");let J=V(_.commentBefore);U.unshift(B.indentComment(J,\"\"))}let X=!1,$=null;if(_.contents){if(Q.isNode(_.contents)){if(_.contents.spaceBefore&&H)U.push(\"\");if(_.contents.commentBefore){let K=V(_.contents.commentBefore);U.push(B.indentComment(K,\"\"))}z.forceBlockIndent=!!_.comment,$=_.contents.comment}let J=$?void 0:()=>X=!0,W=G.stringify(_.contents,z,()=>$=null,J);if($)W+=B.lineComment(W,\"\",V($));if((W[0]===\"|\"||W[0]===\">\")&&U[U.length-1]===\"---\")U[U.length-1]=`--- ${W}`;else U.push(W)}else U.push(G.stringify(_.contents,z));if(_.directives?.docEnd)if(_.comment){let J=V(_.comment);if(J.includes(`\n`))U.push(\"...\"),U.push(B.indentComment(J,\"\"));else U.push(`... ${J}`)}else U.push(\"...\");else{let J=_.comment;if(J&&X)J=J.replace(/^\\n+/,\"\");if(J){if((!X||$)&&U[U.length-1]!==\"\")U.push(\"\");U.push(B.indentComment(V(J),\"\"))}}return U.join(`\n`)+`\n`}Z.stringifyDocument=O}),x0=S((Z)=>{var Q=C0(),G=XZ(),B=y(),O=$0(),_=X0(),Y=lZ(),U=o6(),H=e0(),z=kZ(),V=E0(),X=yZ();class ${constructor(W,K,F){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,B.NODE_TYPE,{value:B.DOC});let j=null;if(typeof K===\"function\"||Array.isArray(K))j=K;else if(F===void 0&&K)F=K,K=void 0;let R=Object.assign({intAsBigInt:!1,keepSourceTokens:!1,logLevel:\"warn\",prettyErrors:!0,strict:!0,stringKeys:!1,uniqueKeys:!0,version:\"1.2\"},F);this.options=R;let{version:q}=R;if(F?._directives){if(this.directives=F._directives.atDocument(),this.directives.yaml.explicit)q=this.directives.yaml.version}else this.directives=new X.Directives({version:q});this.setSchema(q,F),this.contents=W===void 0?null:this.createNode(W,j,F)}clone(){let W=Object.create($.prototype,{[B.NODE_TYPE]:{value:B.DOC}});if(W.commentBefore=this.commentBefore,W.comment=this.comment,W.errors=this.errors.slice(),W.warnings=this.warnings.slice(),W.options=Object.assign({},this.options),this.directives)W.directives=this.directives.clone();if(W.schema=this.schema.clone(),W.contents=B.isNode(this.contents)?this.contents.clone(W.schema):this.contents,this.range)W.range=this.range.slice();return W}add(W){if(J(this.contents))this.contents.add(W)}addIn(W,K){if(J(this.contents))this.contents.addIn(W,K)}createAlias(W,K){if(!W.anchor){let F=H.anchorNames(this);W.anchor=!K||F.has(K)?H.findNewAnchor(K||\"a\",F):K}return new Q.Alias(W.anchor)}createNode(W,K,F){let j=void 0;if(typeof K===\"function\")W=K.call({\"\":W},\"\",W),j=K;else if(Array.isArray(K)){let k=(f)=>typeof f===\"number\"||f instanceof String||f instanceof Number,g=K.filter(k).map(String);if(g.length>0)K=K.concat(g);j=K}else if(F===void 0&&K)F=K,K=void 0;let{aliasDuplicateObjects:R,anchorPrefix:q,flow:I,keepUndefined:L,onTagObj:A,tag:D}=F??{},{onAnchor:N,setAnchors:T,sourceObjects:M}=H.createNodeAnchors(this,q||\"a\"),C={aliasDuplicateObjects:R??!0,keepUndefined:L??!1,onAnchor:N,onTagObj:A,replacer:j,schema:this.schema,sourceObjects:M},E=V.createNode(W,D,C);if(I&&B.isCollection(E))E.flow=!0;return T(),E}createPair(W,K,F={}){let j=this.createNode(W,null,F),R=this.createNode(K,null,F);return new O.Pair(j,R)}delete(W){return J(this.contents)?this.contents.delete(W):!1}deleteIn(W){if(G.isEmptyPath(W)){if(this.contents==null)return!1;return this.contents=null,!0}return J(this.contents)?this.contents.deleteIn(W):!1}get(W,K){return B.isCollection(this.contents)?this.contents.get(W,K):void 0}getIn(W,K){if(G.isEmptyPath(W))return!K&&B.isScalar(this.contents)?this.contents.value:this.contents;return B.isCollection(this.contents)?this.contents.getIn(W,K):void 0}has(W){return B.isCollection(this.contents)?this.contents.has(W):!1}hasIn(W){if(G.isEmptyPath(W))return this.contents!==void 0;return B.isCollection(this.contents)?this.contents.hasIn(W):!1}set(W,K){if(this.contents==null)this.contents=G.collectionFromPath(this.schema,[W],K);else if(J(this.contents))this.contents.set(W,K)}setIn(W,K){if(G.isEmptyPath(W))this.contents=K;else if(this.contents==null)this.contents=G.collectionFromPath(this.schema,Array.from(W),K);else if(J(this.contents))this.contents.setIn(W,K)}setSchema(W,K={}){if(typeof W===\"number\")W=String(W);let F;switch(W){case\"1.1\":if(this.directives)this.directives.yaml.version=\"1.1\";else this.directives=new X.Directives({version:\"1.1\"});F={resolveKnownTags:!1,schema:\"yaml-1.1\"};break;case\"1.2\":case\"next\":if(this.directives)this.directives.yaml.version=W;else this.directives=new X.Directives({version:W});F={resolveKnownTags:!0,schema:\"core\"};break;case null:if(this.directives)delete this.directives;F=null;break;default:{let j=JSON.stringify(W);throw Error(`Expected '1.1', '1.2' or null as first argument, but found: ${j}`)}}if(K.schema instanceof Object)this.schema=K.schema;else if(F)this.schema=new Y.Schema(Object.assign(F,K));else throw Error(\"With a null YAML version, the { schema: Schema } option is required\")}toJS({json:W,jsonArg:K,mapAsMap:F,maxAliasCount:j,onAnchor:R,reviver:q}={}){let I={anchors:new Map,doc:this,keep:!W,mapAsMap:F===!0,mapKeyWarned:!1,maxAliasCount:typeof j===\"number\"?j:100},L=_.toJS(this.contents,K??\"\",I);if(typeof R===\"function\")for(let{count:A,res:D}of I.anchors.values())R(D,A);return typeof q===\"function\"?z.applyReviver(q,{\"\":L},\"\",L):L}toJSON(W,K){return this.toJS({json:!0,jsonArg:W,mapAsMap:!1,onAnchor:K})}toString(W={}){if(this.errors.length>0)throw Error(\"Document with errors cannot be stringified\");if(\"indent\"in W&&(!Number.isInteger(W.indent)||Number(W.indent)<=0)){let K=JSON.stringify(W.indent);throw Error(`\"indent\" option must be a positive integer, not ${K}`)}return U.stringifyDocument(this,W)}}function J(W){if(B.isCollection(W))return!0;throw Error(\"Expected a YAML collection as document contents\")}Z.Document=$}),f0=S((Z)=>{class Q extends Error{constructor(_,Y,U,H){super();this.name=_,this.code=U,this.message=H,this.pos=Y}}class G extends Q{constructor(_,Y,U){super(\"YAMLParseError\",_,Y,U)}}class B extends Q{constructor(_,Y,U){super(\"YAMLWarning\",_,Y,U)}}var O=(_,Y)=>(U)=>{if(U.pos[0]===-1)return;U.linePos=U.pos.map(($)=>Y.linePos($));let{line:H,col:z}=U.linePos[0];U.message+=` at line ${H}, column ${z}`;let V=z-1,X=_.substring(Y.lineStarts[H-1],Y.lineStarts[H]).replace(/[\\n\\r]+$/,\"\");if(V>=60&&X.length>80){let $=Math.min(V-39,X.length-79);X=\"\u2026\"+X.substring($),V-=$-1}if(X.length>80)X=X.substring(0,79)+\"\u2026\";if(H>1&&/^ *$/.test(X.substring(0,V))){let $=_.substring(Y.lineStarts[H-2],Y.lineStarts[H-1]);if($.length>80)$=$.substring(0,79)+`\u2026\n`;X=$+X}if(/[^ ]/.test(X)){let $=1,J=U.linePos[1];if(J?.line===H&&J.col>z)$=Math.max(1,Math.min(J.col-z,80-V));let W=\" \".repeat(V)+\"^\".repeat($);U.message+=`:\n\n${X}\n${W}\n`}};Z.YAMLError=Q,Z.YAMLParseError=G,Z.YAMLWarning=B,Z.prettifyError=O}),g0=S((Z)=>{function Q(G,{flow:B,indicator:O,next:_,offset:Y,onError:U,parentIndent:H,startOnNewline:z}){let V=!1,X=z,$=z,J=\"\",W=\"\",K=!1,F=!1,j=null,R=null,q=null,I=null,L=null,A=null,D=null;for(let M of G){if(F){if(M.type!==\"space\"&&M.type!==\"newline\"&&M.type!==\"comma\")U(M.offset,\"MISSING_CHAR\",\"Tags and anchors must be separated from the next token by white space\");F=!1}if(j){if(X&&M.type!==\"comment\"&&M.type!==\"newline\")U(j,\"TAB_AS_INDENT\",\"Tabs are not allowed as indentation\");j=null}switch(M.type){case\"space\":if(!B&&(O!==\"doc-start\"||_?.type!==\"flow-collection\")&&M.source.includes(\"\\t\"))j=M;$=!0;break;case\"comment\":{if(!$)U(M,\"MISSING_CHAR\",\"Comments must be separated from other tokens by white space characters\");let C=M.source.substring(1)||\" \";if(!J)J=C;else J+=W+C;W=\"\",X=!1;break}case\"newline\":if(X){if(J)J+=M.source;else if(!A||O!==\"seq-item-ind\")V=!0}else W+=M.source;if(X=!0,K=!0,R||q)I=M;$=!0;break;case\"anchor\":if(R)U(M,\"MULTIPLE_ANCHORS\",\"A node can have at most one anchor\");if(M.source.endsWith(\":\"))U(M.offset+M.source.length-1,\"BAD_ALIAS\",\"Anchor ending in : is ambiguous\",!0);R=M,D??(D=M.offset),X=!1,$=!1,F=!0;break;case\"tag\":{if(q)U(M,\"MULTIPLE_TAGS\",\"A node can have at most one tag\");q=M,D??(D=M.offset),X=!1,$=!1,F=!0;break}case O:if(R||q)U(M,\"BAD_PROP_ORDER\",`Anchors and tags must be after the ${M.source} indicator`);if(A)U(M,\"UNEXPECTED_TOKEN\",`Unexpected ${M.source} in ${B??\"collection\"}`);A=M,X=O===\"seq-item-ind\"||O===\"explicit-key-ind\",$=!1;break;case\"comma\":if(B){if(L)U(M,\"UNEXPECTED_TOKEN\",`Unexpected , in ${B}`);L=M,X=!1,$=!1;break}default:U(M,\"UNEXPECTED_TOKEN\",`Unexpected ${M.type} token`),X=!1,$=!1}}let N=G[G.length-1],T=N?N.offset+N.source.length:Y;if(F&&_&&_.type!==\"space\"&&_.type!==\"newline\"&&_.type!==\"comma\"&&(_.type!==\"scalar\"||_.source!==\"\"))U(_.offset,\"MISSING_CHAR\",\"Tags and anchors must be separated from the next token by white space\");if(j&&(X&&j.indent<=H||_?.type===\"block-map\"||_?.type===\"block-seq\"))U(j,\"TAB_AS_INDENT\",\"Tabs are not allowed as indentation\");return{comma:L,found:A,spaceBefore:V,comment:J,hasNewline:K,anchor:R,tag:q,newlineAfterProp:I,end:T,start:D??T}}Z.resolveProps=Q}),JZ=S((Z)=>{function Q(G){if(!G)return null;switch(G.type){case\"alias\":case\"scalar\":case\"double-quoted-scalar\":case\"single-quoted-scalar\":if(G.source.includes(`\n`))return!0;if(G.end){for(let B of G.end)if(B.type===\"newline\")return!0}return!1;case\"flow-collection\":for(let B of G.items){for(let O of B.start)if(O.type===\"newline\")return!0;if(B.sep){for(let O of B.sep)if(O.type===\"newline\")return!0}if(Q(B.key)||Q(B.value))return!0}return!1;default:return!0}}Z.containsNewline=Q}),cZ=S((Z)=>{var Q=JZ();function G(B,O,_){if(O?.type===\"flow-collection\"){let Y=O.end[0];if(Y.indent===B&&(Y.source===\"]\"||Y.source===\"}\")&&Q.containsNewline(O))_(Y,\"BAD_INDENT\",\"Flow end indicator should be more indented than parent\",!0)}}Z.flowIndentCheck=G}),iZ=S((Z)=>{var Q=y();function G(B,O,_){let{uniqueKeys:Y}=B.options;if(Y===!1)return!1;let U=typeof Y===\"function\"?Y:(H,z)=>H===z||Q.isScalar(H)&&Q.isScalar(z)&&H.value===z.value;return O.some((H)=>U(H.key,_))}Z.mapIncludes=G}),t6=S((Z)=>{var Q=$0(),G=z0(),B=g0(),O=JZ(),_=cZ(),Y=iZ(),U=\"All mapping items must start at the same column\";function H({composeNode:z,composeEmptyNode:V},X,$,J,W){let F=new(W?.nodeClass??G.YAMLMap)(X.schema);if(X.atRoot)X.atRoot=!1;let j=$.offset,R=null;for(let q of $.items){let{start:I,key:L,sep:A,value:D}=q,N=B.resolveProps(I,{indicator:\"explicit-key-ind\",next:L??A?.[0],offset:j,onError:J,parentIndent:$.indent,startOnNewline:!0}),T=!N.found;if(T){if(L){if(L.type===\"block-seq\")J(j,\"BLOCK_AS_IMPLICIT_KEY\",\"A block sequence may not be used as an implicit map key\");else if(\"indent\"in L&&L.indent!==$.indent)J(j,\"BAD_INDENT\",U)}if(!N.anchor&&!N.tag&&!A){if(R=N.end,N.comment)if(F.comment)F.comment+=`\n`+N.comment;else F.comment=N.comment;continue}if(N.newlineAfterProp||O.containsNewline(L))J(L??I[I.length-1],\"MULTILINE_IMPLICIT_KEY\",\"Implicit keys need to be on a single line\")}else if(N.found?.indent!==$.indent)J(j,\"BAD_INDENT\",U);X.atKey=!0;let M=N.end,C=L?z(X,L,N,J):V(X,M,I,null,N,J);if(X.schema.compat)_.flowIndentCheck($.indent,L,J);if(X.atKey=!1,Y.mapIncludes(X,F.items,C))J(M,\"DUPLICATE_KEY\",\"Map keys must be unique\");let E=B.resolveProps(A??[],{indicator:\"map-value-ind\",next:D,offset:C.range[2],onError:J,parentIndent:$.indent,startOnNewline:!L||L.type===\"block-scalar\"});if(j=E.end,E.found){if(T){if(D?.type===\"block-map\"&&!E.hasNewline)J(j,\"BLOCK_AS_IMPLICIT_KEY\",\"Nested mappings are not allowed in compact mappings\");if(X.options.strict&&N.start<E.found.offset-1024)J(C.range,\"KEY_OVER_1024_CHARS\",\"The : indicator must be at most 1024 chars after the start of an implicit block mapping key\")}let k=D?z(X,D,E,J):V(X,j,A,null,E,J);if(X.schema.compat)_.flowIndentCheck($.indent,D,J);j=k.range[2];let g=new Q.Pair(C,k);if(X.options.keepSourceTokens)g.srcToken=q;F.items.push(g)}else{if(T)J(C.range,\"MISSING_CHAR\",\"Implicit map keys need to be followed by map values\");if(E.comment)if(C.comment)C.comment+=`\n`+E.comment;else C.comment=E.comment;let k=new Q.Pair(C);if(X.options.keepSourceTokens)k.srcToken=q;F.items.push(k)}}if(R&&R<j)J(R,\"IMPOSSIBLE\",\"Map comment with trailing content\");return F.range=[$.offset,j,R??j],F}Z.resolveBlockMap=H}),e6=S((Z)=>{var Q=Q0(),G=g0(),B=cZ();function O({composeNode:_,composeEmptyNode:Y},U,H,z,V){let $=new(V?.nodeClass??Q.YAMLSeq)(U.schema);if(U.atRoot)U.atRoot=!1;if(U.atKey)U.atKey=!1;let J=H.offset,W=null;for(let{start:K,value:F}of H.items){let j=G.resolveProps(K,{indicator:\"seq-item-ind\",next:F,offset:J,onError:z,parentIndent:H.indent,startOnNewline:!0});if(!j.found)if(j.anchor||j.tag||F)if(F?.type===\"block-seq\")z(j.end,\"BAD_INDENT\",\"All sequence items must start at the same column\");else z(J,\"MISSING_CHAR\",\"Sequence item without - indicator\");else{if(W=j.end,j.comment)$.comment=j.comment;continue}let R=F?_(U,F,j,z):Y(U,j.end,K,null,j,z);if(U.schema.compat)B.flowIndentCheck(H.indent,F,z);J=R.range[2],$.items.push(R)}return $.range=[H.offset,J,W??J],$}Z.resolveBlockSeq=O}),F0=S((Z)=>{function Q(G,B,O,_){let Y=\"\";if(G){let U=!1,H=\"\";for(let z of G){let{source:V,type:X}=z;switch(X){case\"space\":U=!0;break;case\"comment\":{if(O&&!U)_(z,\"MISSING_CHAR\",\"Comments must be separated from other tokens by white space characters\");let $=V.substring(1)||\" \";if(!Y)Y=$;else Y+=H+$;H=\"\";break}case\"newline\":if(Y)H+=V;U=!0;break;default:_(z,\"UNEXPECTED_TOKEN\",`Unexpected ${X} at node end`)}B+=V.length}}return{comment:Y,offset:B}}Z.resolveEnd=Q}),Z8=S((Z)=>{var Q=y(),G=$0(),B=z0(),O=Q0(),_=F0(),Y=g0(),U=JZ(),H=iZ(),z=\"Block collections are not allowed within flow collections\",V=($)=>$&&($.type===\"block-map\"||$.type===\"block-seq\");function X({composeNode:$,composeEmptyNode:J},W,K,F,j){let R=K.start.source===\"{\",q=R?\"flow map\":\"flow sequence\",L=new(j?.nodeClass??(R?B.YAMLMap:O.YAMLSeq))(W.schema);L.flow=!0;let A=W.atRoot;if(A)W.atRoot=!1;if(W.atKey)W.atKey=!1;let D=K.offset+K.start.source.length;for(let E=0;E<K.items.length;++E){let k=K.items[E],{start:g,key:f,sep:l,value:v}=k,P=Y.resolveProps(g,{flow:q,indicator:\"explicit-key-ind\",next:f??l?.[0],offset:D,onError:F,parentIndent:K.indent,startOnNewline:!1});if(!P.found){if(!P.anchor&&!P.tag&&!l&&!v){if(E===0&&P.comma)F(P.comma,\"UNEXPECTED_TOKEN\",`Unexpected , in ${q}`);else if(E<K.items.length-1)F(P.start,\"UNEXPECTED_TOKEN\",`Unexpected empty item in ${q}`);if(P.comment)if(L.comment)L.comment+=`\n`+P.comment;else L.comment=P.comment;D=P.end;continue}if(!R&&W.options.strict&&U.containsNewline(f))F(f,\"MULTILINE_IMPLICIT_KEY\",\"Implicit keys of flow sequence pairs need to be on a single line\")}if(E===0){if(P.comma)F(P.comma,\"UNEXPECTED_TOKEN\",`Unexpected , in ${q}`)}else{if(!P.comma)F(P.start,\"MISSING_CHAR\",`Missing , between ${q} items`);if(P.comment){let h=\"\";Z:for(let x of g)switch(x.type){case\"comma\":case\"space\":break;case\"comment\":h=x.source.substring(1);break Z;default:break Z}if(h){let x=L.items[L.items.length-1];if(Q.isPair(x))x=x.value??x.key;if(x.comment)x.comment+=`\n`+h;else x.comment=h;P.comment=P.comment.substring(h.length+1)}}}if(!R&&!l&&!P.found){let h=v?$(W,v,P,F):J(W,P.end,l,null,P,F);if(L.items.push(h),D=h.range[2],V(v))F(h.range,\"BLOCK_IN_FLOW\",z)}else{W.atKey=!0;let h=P.end,x=f?$(W,f,P,F):J(W,h,g,null,P,F);if(V(f))F(x.range,\"BLOCK_IN_FLOW\",z);W.atKey=!1;let m=Y.resolveProps(l??[],{flow:q,indicator:\"map-value-ind\",next:v,offset:x.range[2],onError:F,parentIndent:K.indent,startOnNewline:!1});if(m.found){if(!R&&!P.found&&W.options.strict){if(l)for(let c of l){if(c===m.found)break;if(c.type===\"newline\"){F(c,\"MULTILINE_IMPLICIT_KEY\",\"Implicit keys of flow sequence pairs need to be on a single line\");break}}if(P.start<m.found.offset-1024)F(m.found,\"KEY_OVER_1024_CHARS\",\"The : indicator must be at most 1024 chars after the start of an implicit flow sequence key\")}}else if(v)if(\"source\"in v&&v.source?.[0]===\":\")F(v,\"MISSING_CHAR\",`Missing space after : in ${q}`);else F(m.start,\"MISSING_CHAR\",`Missing , or : between ${q} items`);let G0=v?$(W,v,m,F):m.found?J(W,m.end,l,null,m,F):null;if(G0){if(V(v))F(G0.range,\"BLOCK_IN_FLOW\",z)}else if(m.comment)if(x.comment)x.comment+=`\n`+m.comment;else x.comment=m.comment;let c0=new G.Pair(x,G0);if(W.options.keepSourceTokens)c0.srcToken=k;if(R){let c=L;if(H.mapIncludes(W,c.items,x))F(h,\"DUPLICATE_KEY\",\"Map keys must be unique\");c.items.push(c0)}else{let c=new B.YAMLMap(W.schema);c.flow=!0,c.items.push(c0);let YZ=(G0??x).range;c.range=[x.range[0],YZ[1],YZ[2]],L.items.push(c)}D=G0?G0.range[2]:m.end}}let N=R?\"}\":\"]\",[T,...M]=K.end,C=D;if(T?.source===N)C=T.offset+T.source.length;else{let E=q[0].toUpperCase()+q.substring(1),k=A?`${E} must end with a ${N}`:`${E} in block collection must be sufficiently indented and end with a ${N}`;if(F(D,A?\"MISSING_CHAR\":\"BAD_INDENT\",k),T&&T.source.length!==1)M.unshift(T)}if(M.length>0){let E=_.resolveEnd(M,C,W.options.strict,F);if(E.comment)if(L.comment)L.comment+=`\n`+E.comment;else L.comment=E.comment;L.range=[K.offset,C,E.offset]}else L.range=[K.offset,C,C];return L}Z.resolveFlowCollection=X}),X8=S((Z)=>{var Q=y(),G=b(),B=z0(),O=Q0(),_=t6(),Y=e6(),U=Z8();function H(V,X,$,J,W,K){let F=$.type===\"block-map\"?_.resolveBlockMap(V,X,$,J,K):$.type===\"block-seq\"?Y.resolveBlockSeq(V,X,$,J,K):U.resolveFlowCollection(V,X,$,J,K),j=F.constructor;if(W===\"!\"||W===j.tagName)return F.tag=j.tagName,F;if(W)F.tag=W;return F}function z(V,X,$,J,W){let K=J.tag,F=!K?null:X.directives.tagName(K.source,(A)=>W(K,\"TAG_RESOLVE_FAILED\",A));if($.type===\"block-seq\"){let{anchor:A,newlineAfterProp:D}=J,N=A&&K?A.offset>K.offset?A:K:A??K;if(N&&(!D||D.offset<N.offset))W(N,\"MISSING_CHAR\",\"Missing newline after block sequence props\")}let j=$.type===\"block-map\"?\"map\":$.type===\"block-seq\"?\"seq\":$.start.source===\"{\"?\"map\":\"seq\";if(!K||!F||F===\"!\"||F===B.YAMLMap.tagName&&j===\"map\"||F===O.YAMLSeq.tagName&&j===\"seq\")return H(V,X,$,W,F);let R=X.schema.tags.find((A)=>A.tag===F&&A.collection===j);if(!R){let A=X.schema.knownTags[F];if(A?.collection===j)X.schema.tags.push(Object.assign({},A,{default:!1})),R=A;else{if(A)W(K,\"BAD_COLLECTION_TYPE\",`${A.tag} used for ${j} collection, but expects ${A.collection??\"scalar\"}`,!0);else W(K,\"TAG_RESOLVE_FAILED\",`Unresolved tag: ${F}`,!0);return H(V,X,$,W,F)}}let q=H(V,X,$,W,F,R),I=R.resolve?.(q,(A)=>W(K,\"TAG_RESOLVE_FAILED\",A),X.options)??q,L=Q.isNode(I)?I:new G.Scalar(I);if(L.range=q.range,L.tag=F,R?.format)L.format=R.format;return L}Z.composeCollection=z}),nZ=S((Z)=>{var Q=b();function G(_,Y,U){let H=Y.offset,z=B(Y,_.options.strict,U);if(!z)return{value:\"\",type:null,comment:\"\",range:[H,H,H]};let V=z.mode===\">\"?Q.Scalar.BLOCK_FOLDED:Q.Scalar.BLOCK_LITERAL,X=Y.source?O(Y.source):[],$=X.length;for(let I=X.length-1;I>=0;--I){let L=X[I][1];if(L===\"\"||L===\"\\r\")$=I;else break}if($===0){let I=z.chomp===\"+\"&&X.length>0?`\n`.repeat(Math.max(1,X.length-1)):\"\",L=H+z.length;if(Y.source)L+=Y.source.length;return{value:I,type:V,comment:z.comment,range:[H,L,L]}}let J=Y.indent+z.indent,W=Y.offset+z.length,K=0;for(let I=0;I<$;++I){let[L,A]=X[I];if(A===\"\"||A===\"\\r\"){if(z.indent===0&&L.length>J)J=L.length}else{if(L.length<J)U(W+L.length,\"MISSING_CHAR\",\"Block scalars with more-indented leading empty lines must use an explicit indentation indicator\");if(z.indent===0)J=L.length;if(K=I,J===0&&!_.atRoot)U(W,\"BAD_INDENT\",\"Block scalar values in collections must be indented\");break}W+=L.length+A.length+1}for(let I=X.length-1;I>=$;--I)if(X[I][0].length>J)$=I+1;let F=\"\",j=\"\",R=!1;for(let I=0;I<K;++I)F+=X[I][0].slice(J)+`\n`;for(let I=K;I<$;++I){let[L,A]=X[I];W+=L.length+A.length+1;let D=A[A.length-1]===\"\\r\";if(D)A=A.slice(0,-1);if(A&&L.length<J){let T=`Block scalar lines must not be less indented than their ${z.indent?\"explicit indentation indicator\":\"first line\"}`;U(W-A.length-(D?2:1),\"BAD_INDENT\",T),L=\"\"}if(V===Q.Scalar.BLOCK_LITERAL)F+=j+L.slice(J)+A,j=`\n`;else if(L.length>J||A[0]===\"\\t\"){if(j===\" \")j=`\n`;else if(!R&&j===`\n`)j=`\n\n`;F+=j+L.slice(J)+A,j=`\n`,R=!0}else if(A===\"\")if(j===`\n`)F+=`\n`;else j=`\n`;else F+=j+A,j=\" \",R=!1}switch(z.chomp){case\"-\":break;case\"+\":for(let I=$;I<X.length;++I)F+=`\n`+X[I][0].slice(J);if(F[F.length-1]!==`\n`)F+=`\n`;break;default:F+=`\n`}let q=H+z.length+Y.source.length;return{value:F,type:V,comment:z.comment,range:[H,q,q]}}function B({offset:_,props:Y},U,H){if(Y[0].type!==\"block-scalar-header\")return H(Y[0],\"IMPOSSIBLE\",\"Block scalar header not found\"),null;let{source:z}=Y[0],V=z[0],X=0,$=\"\",J=-1;for(let j=1;j<z.length;++j){let R=z[j];if(!$&&(R===\"-\"||R===\"+\"))$=R;else{let q=Number(R);if(!X&&q)X=q;else if(J===-1)J=_+j}}if(J!==-1)H(J,\"UNEXPECTED_TOKEN\",`Block scalar header includes extra characters: ${z}`);let W=!1,K=\"\",F=z.length;for(let j=1;j<Y.length;++j){let R=Y[j];switch(R.type){case\"space\":W=!0;case\"newline\":F+=R.source.length;break;case\"comment\":if(U&&!W)H(R,\"MISSING_CHAR\",\"Comments must be separated from other tokens by white space characters\");F+=R.source.length,K=R.source.substring(1);break;case\"error\":H(R,\"UNEXPECTED_TOKEN\",R.message),F+=R.source.length;break;default:{let q=`Unexpected token in block scalar header: ${R.type}`;H(R,\"UNEXPECTED_TOKEN\",q);let I=R.source;if(I&&typeof I===\"string\")F+=I.length}}}return{mode:V,indent:X,chomp:$,comment:K,length:F}}function O(_){let Y=_.split(/\\n( *)/),U=Y[0],H=U.match(/^( *)/),V=[H?.[1]?[H[1],U.slice(H[1].length)]:[\"\",U]];for(let X=1;X<Y.length;X+=2)V.push([Y[X],Y[X+1]]);return V}Z.resolveBlockScalar=G}),sZ=S((Z)=>{var Q=b(),G=F0();function B(X,$,J){let{offset:W,type:K,source:F,end:j}=X,R,q,I=(D,N,T)=>J(W+D,N,T);switch(K){case\"scalar\":R=Q.Scalar.PLAIN,q=O(F,I);break;case\"single-quoted-scalar\":R=Q.Scalar.QUOTE_SINGLE,q=_(F,I);break;case\"double-quoted-scalar\":R=Q.Scalar.QUOTE_DOUBLE,q=U(F,I);break;default:return J(X,\"UNEXPECTED_TOKEN\",`Expected a flow scalar value, but found: ${K}`),{value:\"\",type:null,comment:\"\",range:[W,W+F.length,W+F.length]}}let L=W+F.length,A=G.resolveEnd(j,L,$,J);return{value:q,type:R,comment:A.comment,range:[W,L,A.offset]}}function O(X,$){let J=\"\";switch(X[0]){case\"\\t\":J=\"a tab character\";break;case\",\":J=\"flow indicator character ,\";break;case\"%\":J=\"directive indicator character %\";break;case\"|\":case\">\":{J=`block scalar indicator ${X[0]}`;break}case\"@\":case\"`\":{J=`reserved character ${X[0]}`;break}}if(J)$(0,\"BAD_SCALAR_START\",`Plain value cannot start with ${J}`);return Y(X)}function _(X,$){if(X[X.length-1]!==\"'\"||X.length===1)$(X.length,\"MISSING_CHAR\",\"Missing closing 'quote\");return Y(X.slice(1,-1)).replace(/''/g,\"'\")}function Y(X){let $,J;try{$=new RegExp(`(.*?)(?<![ \t])[ \t]*\\r?\n`,\"sy\"),J=new RegExp(`[ \t]*(.*?)(?:(?<![ \t])[ \t]*)?\\r?\n`,\"sy\")}catch{$=/(.*?)[ \\t]*\\r?\\n/sy,J=/[ \\t]*(.*?)[ \\t]*\\r?\\n/sy}let W=$.exec(X);if(!W)return X;let K=W[1],F=\" \",j=$.lastIndex;J.lastIndex=j;while(W=J.exec(X)){if(W[1]===\"\")if(F===`\n`)K+=F;else F=`\n`;else K+=F+W[1],F=\" \";j=J.lastIndex}let R=/[ \\t]*(.*)/sy;return R.lastIndex=j,W=R.exec(X),K+F+(W?.[1]??\"\")}function U(X,$){let J=\"\";for(let W=1;W<X.length-1;++W){let K=X[W];if(K===\"\\r\"&&X[W+1]===`\n`)continue;if(K===`\n`){let{fold:F,offset:j}=H(X,W);J+=F,W=j}else if(K===\"\\\\\"){let F=X[++W],j=z[F];if(j)J+=j;else if(F===`\n`){F=X[W+1];while(F===\" \"||F===\"\\t\")F=X[++W+1]}else if(F===\"\\r\"&&X[W+1]===`\n`){F=X[++W+1];while(F===\" \"||F===\"\\t\")F=X[++W+1]}else if(F===\"x\"||F===\"u\"||F===\"U\"){let R={x:2,u:4,U:8}[F];J+=V(X,W+1,R,$),W+=R}else{let R=X.substr(W-1,2);$(W-1,\"BAD_DQ_ESCAPE\",`Invalid escape sequence ${R}`),J+=R}}else if(K===\" \"||K===\"\\t\"){let F=W,j=X[W+1];while(j===\" \"||j===\"\\t\")j=X[++W+1];if(j!==`\n`&&!(j===\"\\r\"&&X[W+2]===`\n`))J+=W>F?X.slice(F,W+1):K}else J+=K}if(X[X.length-1]!=='\"'||X.length===1)$(X.length,\"MISSING_CHAR\",'Missing closing \"quote');return J}function H(X,$){let J=\"\",W=X[$+1];while(W===\" \"||W===\"\\t\"||W===`\n`||W===\"\\r\"){if(W===\"\\r\"&&X[$+2]!==`\n`)break;if(W===`\n`)J+=`\n`;$+=1,W=X[$+1]}if(!J)J=\" \";return{fold:J,offset:$}}var z={\"0\":\"\\x00\",a:\"\\x07\",b:\"\\b\",e:\"\\x1B\",f:\"\\f\",n:`\n`,r:\"\\r\",t:\"\\t\",v:\"\\v\",N:\"\u0085\",_:\"\u00A0\",L:\"\\u2028\",P:\"\\u2029\",\" \":\" \",'\"':'\"',\"/\":\"/\",\"\\\\\":\"\\\\\",\"\\t\":\"\\t\"};function V(X,$,J,W){let K=X.substr($,J),j=K.length===J&&/^[0-9a-fA-F]+$/.test(K)?parseInt(K,16):NaN;if(isNaN(j)){let R=X.substr($-2,J+2);return W($-2,\"BAD_DQ_ESCAPE\",`Invalid escape sequence ${R}`),R}return String.fromCodePoint(j)}Z.resolveFlowScalar=B}),$8=S((Z)=>{var Q=y(),G=b(),B=nZ(),O=sZ();function _(H,z,V,X){let{value:$,type:J,comment:W,range:K}=z.type===\"block-scalar\"?B.resolveBlockScalar(H,z,X):O.resolveFlowScalar(z,H.options.strict,X),F=V?H.directives.tagName(V.source,(q)=>X(V,\"TAG_RESOLVE_FAILED\",q)):null,j;if(H.options.stringKeys&&H.atKey)j=H.schema[Q.SCALAR];else if(F)j=Y(H.schema,$,F,V,X);else if(z.type===\"scalar\")j=U(H,$,z,X);else j=H.schema[Q.SCALAR];let R;try{let q=j.resolve($,(I)=>X(V??z,\"TAG_RESOLVE_FAILED\",I),H.options);R=Q.isScalar(q)?q:new G.Scalar(q)}catch(q){let I=q instanceof Error?q.message:String(q);X(V??z,\"TAG_RESOLVE_FAILED\",I),R=new G.Scalar($)}if(R.range=K,R.source=$,J)R.type=J;if(F)R.tag=F;if(j.format)R.format=j.format;if(W)R.comment=W;return R}function Y(H,z,V,X,$){if(V===\"!\")return H[Q.SCALAR];let J=[];for(let K of H.tags)if(!K.collection&&K.tag===V)if(K.default&&K.test)J.push(K);else return K;for(let K of J)if(K.test?.test(z))return K;let W=H.knownTags[V];if(W&&!W.collection)return H.tags.push(Object.assign({},W,{default:!1,test:void 0})),W;return $(X,\"TAG_RESOLVE_FAILED\",`Unresolved tag: ${V}`,V!==\"tag:yaml.org,2002:str\"),H[Q.SCALAR]}function U({atKey:H,directives:z,schema:V},X,$,J){let W=V.tags.find((K)=>(K.default===!0||H&&K.default===\"key\")&&K.test?.test(X))||V[Q.SCALAR];if(V.compat){let K=V.compat.find((F)=>F.default&&F.test?.test(X))??V[Q.SCALAR];if(W.tag!==K.tag){let F=z.tagString(W.tag),j=z.tagString(K.tag),R=`Value may be parsed as either ${F} or ${j}`;J($,\"TAG_RESOLVE_FAILED\",R,!0)}}return W}Z.composeScalar=_}),z8=S((Z)=>{function Q(G,B,O){if(B){O??(O=B.length);for(let _=O-1;_>=0;--_){let Y=B[_];switch(Y.type){case\"space\":case\"comment\":case\"newline\":G-=Y.source.length;continue}Y=B[++_];while(Y?.type===\"space\")G+=Y.source.length,Y=B[++_];break}}return G}Z.emptyScalarPosition=Q}),Q8=S((Z)=>{var Q=C0(),G=y(),B=X8(),O=$8(),_=F0(),Y=z8(),U={composeNode:H,composeEmptyNode:z};function H(X,$,J,W){let K=X.atKey,{spaceBefore:F,comment:j,anchor:R,tag:q}=J,I,L=!0;switch($.type){case\"alias\":if(I=V(X,$,W),R||q)W($,\"ALIAS_PROPS\",\"An alias node must not specify any properties\");break;case\"scalar\":case\"single-quoted-scalar\":case\"double-quoted-scalar\":case\"block-scalar\":if(I=O.composeScalar(X,$,q,W),R)I.anchor=R.source.substring(1);break;case\"block-map\":case\"block-seq\":case\"flow-collection\":try{if(I=B.composeCollection(U,X,$,J,W),R)I.anchor=R.source.substring(1)}catch(A){let D=A instanceof Error?A.message:String(A);W($,\"RESOURCE_EXHAUSTION\",D)}break;default:{let A=$.type===\"error\"?$.message:`Unsupported token (type: ${$.type})`;W($,\"UNEXPECTED_TOKEN\",A),L=!1}}if(I??(I=z(X,$.offset,void 0,null,J,W)),R&&I.anchor===\"\")W(R,\"BAD_ALIAS\",\"Anchor cannot be an empty string\");if(K&&X.options.stringKeys&&(!G.isScalar(I)||typeof I.value!==\"string\"||I.tag&&I.tag!==\"tag:yaml.org,2002:str\"))W(q??$,\"NON_STRING_KEY\",\"With stringKeys, all keys must be strings\");if(F)I.spaceBefore=!0;if(j)if($.type===\"scalar\"&&$.source===\"\")I.comment=j;else I.commentBefore=j;if(X.options.keepSourceTokens&&L)I.srcToken=$;return I}function z(X,$,J,W,{spaceBefore:K,comment:F,anchor:j,tag:R,end:q},I){let L={type:\"scalar\",offset:Y.emptyScalarPosition($,J,W),indent:-1,source:\"\"},A=O.composeScalar(X,L,R,I);if(j){if(A.anchor=j.source.substring(1),A.anchor===\"\")I(j,\"BAD_ALIAS\",\"Anchor cannot be an empty string\")}if(K)A.spaceBefore=!0;if(F)A.comment=F,A.range[2]=q;return A}function V({options:X},{offset:$,source:J,end:W},K){let F=new Q.Alias(J.substring(1));if(F.source===\"\")K($,\"BAD_ALIAS\",\"Alias cannot be an empty string\");if(F.source.endsWith(\":\"))K($+J.length-1,\"BAD_ALIAS\",\"Alias ending in : is ambiguous\",!0);let j=$+J.length,R=_.resolveEnd(W,j,X.strict,K);if(F.range=[$,j,R.offset],R.comment)F.comment=R.comment;return F}Z.composeEmptyNode=z,Z.composeNode=H}),J8=S((Z)=>{var Q=x0(),G=Q8(),B=F0(),O=g0();function _(Y,U,{offset:H,start:z,value:V,end:X},$){let J=Object.assign({_directives:U},Y),W=new Q.Document(void 0,J),K={atKey:!1,atRoot:!0,directives:W.directives,options:W.options,schema:W.schema},F=O.resolveProps(z,{indicator:\"doc-start\",next:V??X?.[0],offset:H,onError:$,parentIndent:0,startOnNewline:!0});if(F.found){if(W.directives.docStart=!0,V&&(V.type===\"block-map\"||V.type===\"block-seq\")&&!F.hasNewline)$(F.end,\"MISSING_CHAR\",\"Block collection cannot start on same line with directives-end marker\")}W.contents=V?G.composeNode(K,V,F,$):G.composeEmptyNode(K,F.end,z,null,F,$);let j=W.contents.range[2],R=B.resolveEnd(X,j,!1,$);if(R.comment)W.comment=R.comment;return W.range=[H,j,R.offset],W}Z.composeDoc=_}),aZ=S((Z)=>{var Q=T0(\"process\"),G=yZ(),B=x0(),O=f0(),_=y(),Y=J8(),U=F0();function H(X){if(typeof X===\"number\")return[X,X+1];if(Array.isArray(X))return X.length===2?X:[X[0],X[1]];let{offset:$,source:J}=X;return[$,$+(typeof J===\"string\"?J.length:1)]}function z(X){let $=\"\",J=!1,W=!1;for(let K=0;K<X.length;++K){let F=X[K];switch(F[0]){case\"#\":$+=($===\"\"?\"\":W?`\n\n`:`\n`)+(F.substring(1)||\" \"),J=!0,W=!1;break;case\"%\":if(X[K+1]?.[0]!==\"#\")K+=1;J=!1;break;default:if(!J)W=!0;J=!1}}return{comment:$,afterEmptyLine:W}}class V{constructor(X={}){this.doc=null,this.atDirectives=!1,this.prelude=[],this.errors=[],this.warnings=[],this.onError=($,J,W,K)=>{let F=H($);if(K)this.warnings.push(new O.YAMLWarning(F,J,W));else this.errors.push(new O.YAMLParseError(F,J,W))},this.directives=new G.Directives({version:X.version||\"1.2\"}),this.options=X}decorate(X,$){let{comment:J,afterEmptyLine:W}=z(this.prelude);if(J){let K=X.contents;if($)X.comment=X.comment?`${X.comment}\n${J}`:J;else if(W||X.directives.docStart||!K)X.commentBefore=J;else if(_.isCollection(K)&&!K.flow&&K.items.length>0){let F=K.items[0];if(_.isPair(F))F=F.key;let j=F.commentBefore;F.commentBefore=j?`${J}\n${j}`:J}else{let F=K.commentBefore;K.commentBefore=F?`${J}\n${F}`:J}}if($)Array.prototype.push.apply(X.errors,this.errors),Array.prototype.push.apply(X.warnings,this.warnings);else X.errors=this.errors,X.warnings=this.warnings;this.prelude=[],this.errors=[],this.warnings=[]}streamInfo(){return{comment:z(this.prelude).comment,directives:this.directives,errors:this.errors,warnings:this.warnings}}*compose(X,$=!1,J=-1){for(let W of X)yield*this.next(W);yield*this.end($,J)}*next(X){if(Q.env.LOG_STREAM)console.dir(X,{depth:null});switch(X.type){case\"directive\":this.directives.add(X.source,($,J,W)=>{let K=H(X);K[0]+=$,this.onError(K,\"BAD_DIRECTIVE\",J,W)}),this.prelude.push(X.source),this.atDirectives=!0;break;case\"document\":{let $=Y.composeDoc(this.options,this.directives,X,this.onError);if(this.atDirectives&&!$.directives.docStart)this.onError(X,\"MISSING_CHAR\",\"Missing directives-end/doc-start indicator line\");if(this.decorate($,!1),this.doc)yield this.doc;this.doc=$,this.atDirectives=!1;break}case\"byte-order-mark\":case\"space\":break;case\"comment\":case\"newline\":this.prelude.push(X.source);break;case\"error\":{let $=X.source?`${X.message}: ${JSON.stringify(X.source)}`:X.message,J=new O.YAMLParseError(H(X),\"UNEXPECTED_TOKEN\",$);if(this.atDirectives||!this.doc)this.errors.push(J);else this.doc.errors.push(J);break}case\"doc-end\":{if(!this.doc){this.errors.push(new O.YAMLParseError(H(X),\"UNEXPECTED_TOKEN\",\"Unexpected doc-end without preceding document\"));break}this.doc.directives.docEnd=!0;let $=U.resolveEnd(X.end,X.offset+X.source.length,this.doc.options.strict,this.onError);if(this.decorate(this.doc,!0),$.comment){let J=this.doc.comment;this.doc.comment=J?`${J}\n${$.comment}`:$.comment}this.doc.range[2]=$.offset;break}default:this.errors.push(new O.YAMLParseError(H(X),\"UNEXPECTED_TOKEN\",`Unsupported token ${X.type}`))}}*end(X=!1,$=-1){if(this.doc)this.decorate(this.doc,!0),yield this.doc,this.doc=null;else if(X){let J=Object.assign({_directives:this.directives},this.options),W=new B.Document(void 0,J);if(this.atDirectives)this.onError($,\"MISSING_CHAR\",\"Missing directives-end indicator line\");W.range=[0,$,$],this.decorate(W,!1),yield W}}}Z.Composer=V}),G8=S((Z)=>{var Q=nZ(),G=sZ(),B=f0(),O=w0();function _(X,$=!0,J){if(X){let W=(K,F,j)=>{let R=typeof K===\"number\"?K:Array.isArray(K)?K[0]:K.offset;if(J)J(R,F,j);else throw new B.YAMLParseError([R,R+1],F,j)};switch(X.type){case\"scalar\":case\"single-quoted-scalar\":case\"double-quoted-scalar\":return G.resolveFlowScalar(X,$,W);case\"block-scalar\":return Q.resolveBlockScalar({options:{strict:$}},X,W)}}return null}function Y(X,$){let{implicitKey:J=!1,indent:W,inFlow:K=!1,offset:F=-1,type:j=\"PLAIN\"}=$,R=O.stringifyString({type:j,value:X},{implicitKey:J,indent:W>0?\" \".repeat(W):\"\",inFlow:K,options:{blockQuote:!0,lineWidth:-1}}),q=$.end??[{type:\"newline\",offset:-1,indent:W,source:`\n`}];switch(R[0]){case\"|\":case\">\":{let I=R.indexOf(`\n`),L=R.substring(0,I),A=R.substring(I+1)+`\n`,D=[{type:\"block-scalar-header\",offset:F,indent:W,source:L}];if(!z(D,q))D.push({type:\"newline\",offset:-1,indent:W,source:`\n`});return{type:\"block-scalar\",offset:F,indent:W,props:D,source:A}}case'\"':return{type:\"double-quoted-scalar\",offset:F,indent:W,source:R,end:q};case\"'\":return{type:\"single-quoted-scalar\",offset:F,indent:W,source:R,end:q};default:return{type:\"scalar\",offset:F,indent:W,source:R,end:q}}}function U(X,$,J={}){let{afterKey:W=!1,implicitKey:K=!1,inFlow:F=!1,type:j}=J,R=\"indent\"in X?X.indent:null;if(W&&typeof R===\"number\")R+=2;if(!j)switch(X.type){case\"single-quoted-scalar\":j=\"QUOTE_SINGLE\";break;case\"double-quoted-scalar\":j=\"QUOTE_DOUBLE\";break;case\"block-scalar\":{let I=X.props[0];if(I.type!==\"block-scalar-header\")throw Error(\"Invalid block scalar header\");j=I.source[0]===\">\"?\"BLOCK_FOLDED\":\"BLOCK_LITERAL\";break}default:j=\"PLAIN\"}let q=O.stringifyString({type:j,value:$},{implicitKey:K||R===null,indent:R!==null&&R>0?\" \".repeat(R):\"\",inFlow:F,options:{blockQuote:!0,lineWidth:-1}});switch(q[0]){case\"|\":case\">\":H(X,q);break;case'\"':V(X,q,\"double-quoted-scalar\");break;case\"'\":V(X,q,\"single-quoted-scalar\");break;default:V(X,q,\"scalar\")}}function H(X,$){let J=$.indexOf(`\n`),W=$.substring(0,J),K=$.substring(J+1)+`\n`;if(X.type===\"block-scalar\"){let F=X.props[0];if(F.type!==\"block-scalar-header\")throw Error(\"Invalid block scalar header\");F.source=W,X.source=K}else{let{offset:F}=X,j=\"indent\"in X?X.indent:-1,R=[{type:\"block-scalar-header\",offset:F,indent:j,source:W}];if(!z(R,\"end\"in X?X.end:void 0))R.push({type:\"newline\",offset:-1,indent:j,source:`\n`});for(let q of Object.keys(X))if(q!==\"type\"&&q!==\"offset\")delete X[q];Object.assign(X,{type:\"block-scalar\",indent:j,props:R,source:K})}}function z(X,$){if($)for(let J of $)switch(J.type){case\"space\":case\"comment\":X.push(J);break;case\"newline\":return X.push(J),!0}return!1}function V(X,$,J){switch(X.type){case\"scalar\":case\"double-quoted-scalar\":case\"single-quoted-scalar\":X.type=J,X.source=$;break;case\"block-scalar\":{let W=X.props.slice(1),K=$.length;if(X.props[0].type===\"block-scalar-header\")K-=X.props[0].source.length;for(let F of W)F.offset+=K;delete X.props,Object.assign(X,{type:J,source:$,end:W});break}case\"block-map\":case\"block-seq\":{let K={type:\"newline\",offset:X.offset+$.length,indent:X.indent,source:`\n`};delete X.items,Object.assign(X,{type:J,source:$,end:[K]});break}default:{let W=\"indent\"in X?X.indent:-1,K=\"end\"in X&&Array.isArray(X.end)?X.end.filter((F)=>F.type===\"space\"||F.type===\"comment\"||F.type===\"newline\"):[];for(let F of Object.keys(X))if(F!==\"type\"&&F!==\"offset\")delete X[F];Object.assign(X,{type:J,indent:W,source:$,end:K})}}}Z.createScalarToken=Y,Z.resolveAsScalar=_,Z.setScalarValue=U}),W8=S((Z)=>{var Q=(O)=>(\"type\"in O)?G(O):B(O);function G(O){switch(O.type){case\"block-scalar\":{let _=\"\";for(let Y of O.props)_+=G(Y);return _+O.source}case\"block-map\":case\"block-seq\":{let _=\"\";for(let Y of O.items)_+=B(Y);return _}case\"flow-collection\":{let _=O.start.source;for(let Y of O.items)_+=B(Y);for(let Y of O.end)_+=Y.source;return _}case\"document\":{let _=B(O);if(O.end)for(let Y of O.end)_+=Y.source;return _}default:{let _=O.source;if(\"end\"in O&&O.end)for(let Y of O.end)_+=Y.source;return _}}}function B({start:O,key:_,sep:Y,value:U}){let H=\"\";for(let z of O)H+=z.source;if(_)H+=G(_);if(Y)for(let z of Y)H+=z.source;if(U)H+=G(U);return H}Z.stringify=Q}),V8=S((Z)=>{var Q=Symbol(\"break visit\"),G=Symbol(\"skip children\"),B=Symbol(\"remove item\");function O(Y,U){if(\"type\"in Y&&Y.type===\"document\")Y={start:Y.start,value:Y.value};_(Object.freeze([]),Y,U)}O.BREAK=Q,O.SKIP=G,O.REMOVE=B,O.itemAtPath=(Y,U)=>{let H=Y;for(let[z,V]of U){let X=H?.[z];if(X&&\"items\"in X)H=X.items[V];else return}return H},O.parentCollection=(Y,U)=>{let H=O.itemAtPath(Y,U.slice(0,-1)),z=U[U.length-1][0],V=H?.[z];if(V&&\"items\"in V)return V;throw Error(\"Parent collection not found\")};function _(Y,U,H){let z=H(U,Y);if(typeof z===\"symbol\")return z;for(let V of[\"key\",\"value\"]){let X=U[V];if(X&&\"items\"in X){for(let $=0;$<X.items.length;++$){let J=_(Object.freeze(Y.concat([[V,$]])),X.items[$],H);if(typeof J===\"number\")$=J-1;else if(J===Q)return Q;else if(J===B)X.items.splice($,1),$-=1}if(typeof z===\"function\"&&V===\"key\")z=z(U,Y)}}return typeof z===\"function\"?z(U,Y):z}Z.visit=O}),GZ=S((Z)=>{var Q=G8(),G=W8(),B=V8(),O=\"\\uFEFF\",_=\"\\x02\",Y=\"\\x18\",U=\"\\x1F\",H=($)=>!!$&&(\"items\"in $),z=($)=>!!$&&($.type===\"scalar\"||$.type===\"single-quoted-scalar\"||$.type===\"double-quoted-scalar\"||$.type===\"block-scalar\");function V($){switch($){case O:return\"<BOM>\";case _:return\"<DOC>\";case Y:return\"<FLOW_END>\";case U:return\"<SCALAR>\";default:return JSON.stringify($)}}function X($){switch($){case O:return\"byte-order-mark\";case _:return\"doc-mode\";case Y:return\"flow-error-end\";case U:return\"scalar\";case\"---\":return\"doc-start\";case\"...\":return\"doc-end\";case\"\":case`\n`:case`\\r\n`:return\"newline\";case\"-\":return\"seq-item-ind\";case\"?\":return\"explicit-key-ind\";case\":\":return\"map-value-ind\";case\"{\":return\"flow-map-start\";case\"}\":return\"flow-map-end\";case\"[\":return\"flow-seq-start\";case\"]\":return\"flow-seq-end\";case\",\":return\"comma\"}switch($[0]){case\" \":case\"\\t\":return\"space\";case\"#\":return\"comment\";case\"%\":return\"directive-line\";case\"*\":return\"alias\";case\"&\":return\"anchor\";case\"!\":return\"tag\";case\"'\":return\"single-quoted-scalar\";case'\"':return\"double-quoted-scalar\";case\"|\":case\">\":return\"block-scalar-header\"}return null}Z.createScalarToken=Q.createScalarToken,Z.resolveAsScalar=Q.resolveAsScalar,Z.setScalarValue=Q.setScalarValue,Z.stringify=G.stringify,Z.visit=B.visit,Z.BOM=O,Z.DOCUMENT=_,Z.FLOW_END=Y,Z.SCALAR=U,Z.isCollection=H,Z.isScalar=z,Z.prettyToken=V,Z.tokenType=X}),rZ=S((Z)=>{var Q=GZ();function G(z){switch(z){case void 0:case\" \":case`\n`:case\"\\r\":case\"\\t\":return!0;default:return!1}}var B=new Set(\"0123456789ABCDEFabcdef\"),O=new Set(\"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()\"),_=new Set(\",[]{}\"),Y=new Set(` ,[]{}\n\\r\t`),U=(z)=>!z||Y.has(z);class H{constructor(){this.atEnd=!1,this.blockScalarIndent=-1,this.blockScalarKeep=!1,this.buffer=\"\",this.flowKey=!1,this.flowLevel=0,this.indentNext=0,this.indentValue=0,this.lineEndPos=null,this.next=null,this.pos=0}*lex(z,V=!1){if(z){if(typeof z!==\"string\")throw TypeError(\"source is not a string\");this.buffer=this.buffer?this.buffer+z:z,this.lineEndPos=null}this.atEnd=!V;let X=this.next??\"stream\";while(X&&(V||this.hasChars(1)))X=yield*this.parseNext(X)}atLineEnd(){let z=this.pos,V=this.buffer[z];while(V===\" \"||V===\"\\t\")V=this.buffer[++z];if(!V||V===\"#\"||V===`\n`)return!0;if(V===\"\\r\")return this.buffer[z+1]===`\n`;return!1}charAt(z){return this.buffer[this.pos+z]}continueScalar(z){let V=this.buffer[z];if(this.indentNext>0){let X=0;while(V===\" \")V=this.buffer[++X+z];if(V===\"\\r\"){let $=this.buffer[X+z+1];if($===`\n`||!$&&!this.atEnd)return z+X+1}return V===`\n`||X>=this.indentNext||!V&&!this.atEnd?z+X:-1}if(V===\"-\"||V===\".\"){let X=this.buffer.substr(z,3);if((X===\"---\"||X===\"...\")&&G(this.buffer[z+3]))return-1}return z}getLine(){let z=this.lineEndPos;if(typeof z!==\"number\"||z!==-1&&z<this.pos)z=this.buffer.indexOf(`\n`,this.pos),this.lineEndPos=z;if(z===-1)return this.atEnd?this.buffer.substring(this.pos):null;if(this.buffer[z-1]===\"\\r\")z-=1;return this.buffer.substring(this.pos,z)}hasChars(z){return this.pos+z<=this.buffer.length}setNext(z){return this.buffer=this.buffer.substring(this.pos),this.pos=0,this.lineEndPos=null,this.next=z,null}peek(z){return this.buffer.substr(this.pos,z)}*parseNext(z){switch(z){case\"stream\":return yield*this.parseStream();case\"line-start\":return yield*this.parseLineStart();case\"block-start\":return yield*this.parseBlockStart();case\"doc\":return yield*this.parseDocument();case\"flow\":return yield*this.parseFlowCollection();case\"quoted-scalar\":return yield*this.parseQuotedScalar();case\"block-scalar\":return yield*this.parseBlockScalar();case\"plain-scalar\":return yield*this.parsePlainScalar()}}*parseStream(){let z=this.getLine();if(z===null)return this.setNext(\"stream\");if(z[0]===Q.BOM)yield*this.pushCount(1),z=z.substring(1);if(z[0]===\"%\"){let V=z.length,X=z.indexOf(\"#\");while(X!==-1){let J=z[X-1];if(J===\" \"||J===\"\\t\"){V=X-1;break}else X=z.indexOf(\"#\",X+1)}while(!0){let J=z[V-1];if(J===\" \"||J===\"\\t\")V-=1;else break}let $=(yield*this.pushCount(V))+(yield*this.pushSpaces(!0));return yield*this.pushCount(z.length-$),this.pushNewline(),\"stream\"}if(this.atLineEnd()){let V=yield*this.pushSpaces(!0);return yield*this.pushCount(z.length-V),yield*this.pushNewline(),\"stream\"}return yield Q.DOCUMENT,yield*this.parseLineStart()}*parseLineStart(){let z=this.charAt(0);if(!z&&!this.atEnd)return this.setNext(\"line-start\");if(z===\"-\"||z===\".\"){if(!this.atEnd&&!this.hasChars(4))return this.setNext(\"line-start\");let V=this.peek(3);if((V===\"---\"||V===\"...\")&&G(this.charAt(3)))return yield*this.pushCount(3),this.indentValue=0,this.indentNext=0,V===\"---\"?\"doc\":\"stream\"}if(this.indentValue=yield*this.pushSpaces(!1),this.indentNext>this.indentValue&&!G(this.charAt(1)))this.indentNext=this.indentValue;return yield*this.parseBlockStart()}*parseBlockStart(){let[z,V]=this.peek(2);if(!V&&!this.atEnd)return this.setNext(\"block-start\");if((z===\"-\"||z===\"?\"||z===\":\")&&G(V)){let X=(yield*this.pushCount(1))+(yield*this.pushSpaces(!0));return this.indentNext=this.indentValue+1,this.indentValue+=X,yield*this.parseBlockStart()}return\"doc\"}*parseDocument(){yield*this.pushSpaces(!0);let z=this.getLine();if(z===null)return this.setNext(\"doc\");let V=yield*this.pushIndicators();switch(z[V]){case\"#\":yield*this.pushCount(z.length-V);case void 0:return yield*this.pushNewline(),yield*this.parseLineStart();case\"{\":case\"[\":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel=1,\"flow\";case\"}\":case\"]\":return yield*this.pushCount(1),\"doc\";case\"*\":return yield*this.pushUntil(U),\"doc\";case'\"':case\"'\":return yield*this.parseQuotedScalar();case\"|\":case\">\":return V+=yield*this.parseBlockScalarHeader(),V+=yield*this.pushSpaces(!0),yield*this.pushCount(z.length-V),yield*this.pushNewline(),yield*this.parseBlockScalar();default:return yield*this.parsePlainScalar()}}*parseFlowCollection(){let z,V,X=-1;do{if(z=yield*this.pushNewline(),z>0)V=yield*this.pushSpaces(!1),this.indentValue=X=V;else V=0;V+=yield*this.pushSpaces(!0)}while(z+V>0);let $=this.getLine();if($===null)return this.setNext(\"flow\");if(X!==-1&&X<this.indentNext&&$[0]!==\"#\"||X===0&&($.startsWith(\"---\")||$.startsWith(\"...\"))&&G($[3])){if(!(X===this.indentNext-1&&this.flowLevel===1&&($[0]===\"]\"||$[0]===\"}\")))return this.flowLevel=0,yield Q.FLOW_END,yield*this.parseLineStart()}let J=0;while($[J]===\",\")J+=yield*this.pushCount(1),J+=yield*this.pushSpaces(!0),this.flowKey=!1;switch(J+=yield*this.pushIndicators(),$[J]){case void 0:return\"flow\";case\"#\":return yield*this.pushCount($.length-J),\"flow\";case\"{\":case\"[\":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel+=1,\"flow\";case\"}\":case\"]\":return yield*this.pushCount(1),this.flowKey=!0,this.flowLevel-=1,this.flowLevel?\"flow\":\"doc\";case\"*\":return yield*this.pushUntil(U),\"flow\";case'\"':case\"'\":return this.flowKey=!0,yield*this.parseQuotedScalar();case\":\":{let W=this.charAt(1);if(this.flowKey||G(W)||W===\",\")return this.flowKey=!1,yield*this.pushCount(1),yield*this.pushSpaces(!0),\"flow\"}default:return this.flowKey=!1,yield*this.parsePlainScalar()}}*parseQuotedScalar(){let z=this.charAt(0),V=this.buffer.indexOf(z,this.pos+1);if(z===\"'\")while(V!==-1&&this.buffer[V+1]===\"'\")V=this.buffer.indexOf(\"'\",V+2);else while(V!==-1){let J=0;while(this.buffer[V-1-J]===\"\\\\\")J+=1;if(J%2===0)break;V=this.buffer.indexOf('\"',V+1)}let X=this.buffer.substring(0,V),$=X.indexOf(`\n`,this.pos);if($!==-1){while($!==-1){let J=this.continueScalar($+1);if(J===-1)break;$=X.indexOf(`\n`,J)}if($!==-1)V=$-(X[$-1]===\"\\r\"?2:1)}if(V===-1){if(!this.atEnd)return this.setNext(\"quoted-scalar\");V=this.buffer.length}return yield*this.pushToIndex(V+1,!1),this.flowLevel?\"flow\":\"doc\"}*parseBlockScalarHeader(){this.blockScalarIndent=-1,this.blockScalarKeep=!1;let z=this.pos;while(!0){let V=this.buffer[++z];if(V===\"+\")this.blockScalarKeep=!0;else if(V>\"0\"&&V<=\"9\")this.blockScalarIndent=Number(V)-1;else if(V!==\"-\")break}return yield*this.pushUntil((V)=>G(V)||V===\"#\")}*parseBlockScalar(){let z=this.pos-1,V=0,X;Z:for(let J=this.pos;X=this.buffer[J];++J)switch(X){case\" \":V+=1;break;case`\n`:z=J,V=0;break;case\"\\r\":{let W=this.buffer[J+1];if(!W&&!this.atEnd)return this.setNext(\"block-scalar\");if(W===`\n`)break}default:break Z}if(!X&&!this.atEnd)return this.setNext(\"block-scalar\");if(V>=this.indentNext){if(this.blockScalarIndent===-1)this.indentNext=V;else this.indentNext=this.blockScalarIndent+(this.indentNext===0?1:this.indentNext);do{let J=this.continueScalar(z+1);if(J===-1)break;z=this.buffer.indexOf(`\n`,J)}while(z!==-1);if(z===-1){if(!this.atEnd)return this.setNext(\"block-scalar\");z=this.buffer.length}}let $=z+1;X=this.buffer[$];while(X===\" \")X=this.buffer[++$];if(X===\"\\t\"){while(X===\"\\t\"||X===\" \"||X===\"\\r\"||X===`\n`)X=this.buffer[++$];z=$-1}else if(!this.blockScalarKeep)do{let J=z-1,W=this.buffer[J];if(W===\"\\r\")W=this.buffer[--J];let K=J;while(W===\" \")W=this.buffer[--J];if(W===`\n`&&J>=this.pos&&J+1+V>K)z=J;else break}while(!0);return yield Q.SCALAR,yield*this.pushToIndex(z+1,!0),yield*this.parseLineStart()}*parsePlainScalar(){let z=this.flowLevel>0,V=this.pos-1,X=this.pos-1,$;while($=this.buffer[++X])if($===\":\"){let J=this.buffer[X+1];if(G(J)||z&&_.has(J))break;V=X}else if(G($)){let J=this.buffer[X+1];if($===\"\\r\")if(J===`\n`)X+=1,$=`\n`,J=this.buffer[X+1];else V=X;if(J===\"#\"||z&&_.has(J))break;if($===`\n`){let W=this.continueScalar(X+1);if(W===-1)break;X=Math.max(X,W-2)}}else{if(z&&_.has($))break;V=X}if(!$&&!this.atEnd)return this.setNext(\"plain-scalar\");return yield Q.SCALAR,yield*this.pushToIndex(V+1,!0),z?\"flow\":\"doc\"}*pushCount(z){if(z>0)return yield this.buffer.substr(this.pos,z),this.pos+=z,z;return 0}*pushToIndex(z,V){let X=this.buffer.slice(this.pos,z);if(X)return yield X,this.pos+=X.length,X.length;else if(V)yield\"\";return 0}*pushIndicators(){switch(this.charAt(0)){case\"!\":return(yield*this.pushTag())+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case\"&\":return(yield*this.pushUntil(U))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case\"-\":case\"?\":case\":\":{let z=this.flowLevel>0,V=this.charAt(1);if(G(V)||z&&_.has(V)){if(!z)this.indentNext=this.indentValue+1;else if(this.flowKey)this.flowKey=!1;return(yield*this.pushCount(1))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators())}}}return 0}*pushTag(){if(this.charAt(1)===\"<\"){let z=this.pos+2,V=this.buffer[z];while(!G(V)&&V!==\">\")V=this.buffer[++z];return yield*this.pushToIndex(V===\">\"?z+1:z,!1)}else{let z=this.pos+1,V=this.buffer[z];while(V)if(O.has(V))V=this.buffer[++z];else if(V===\"%\"&&B.has(this.buffer[z+1])&&B.has(this.buffer[z+2]))V=this.buffer[z+=3];else break;return yield*this.pushToIndex(z,!1)}}*pushNewline(){let z=this.buffer[this.pos];if(z===`\n`)return yield*this.pushCount(1);else if(z===\"\\r\"&&this.charAt(1)===`\n`)return yield*this.pushCount(2);else return 0}*pushSpaces(z){let V=this.pos-1,X;do X=this.buffer[++V];while(X===\" \"||z&&X===\"\\t\");let $=V-this.pos;if($>0)yield this.buffer.substr(this.pos,$),this.pos=V;return $}*pushUntil(z){let V=this.pos,X=this.buffer[V];while(!z(X))X=this.buffer[++V];return yield*this.pushToIndex(V,!1)}}Z.Lexer=H}),oZ=S((Z)=>{class Q{constructor(){this.lineStarts=[],this.addNewLine=(G)=>this.lineStarts.push(G),this.linePos=(G)=>{let B=0,O=this.lineStarts.length;while(B<O){let Y=B+O>>1;if(this.lineStarts[Y]<G)B=Y+1;else O=Y}if(this.lineStarts[B]===G)return{line:B+1,col:1};if(B===0)return{line:0,col:G};let _=this.lineStarts[B-1];return{line:B,col:G-_+1}}}}Z.LineCounter=Q}),tZ=S((Z)=>{var Q=T0(\"process\"),G=GZ(),B=rZ();function O(X,$){for(let J=0;J<X.length;++J)if(X[J].type===$)return!0;return!1}function _(X){for(let $=0;$<X.length;++$)switch(X[$].type){case\"space\":case\"comment\":case\"newline\":break;default:return $}return-1}function Y(X){switch(X?.type){case\"alias\":case\"scalar\":case\"single-quoted-scalar\":case\"double-quoted-scalar\":case\"flow-collection\":return!0;default:return!1}}function U(X){switch(X.type){case\"document\":return X.start;case\"block-map\":{let $=X.items[X.items.length-1];return $.sep??$.start}case\"block-seq\":return X.items[X.items.length-1].start;default:return[]}}function H(X){if(X.length===0)return[];let $=X.length;Z:while(--$>=0)switch(X[$].type){case\"doc-start\":case\"explicit-key-ind\":case\"map-value-ind\":case\"seq-item-ind\":case\"newline\":break Z}while(X[++$]?.type===\"space\");return X.splice($,X.length)}function z(X){if(X.start.type===\"flow-seq-start\"){for(let $ of X.items)if($.sep&&!$.value&&!O($.start,\"explicit-key-ind\")&&!O($.sep,\"map-value-ind\")){if($.key)$.value=$.key;if(delete $.key,Y($.value))if($.value.end)Array.prototype.push.apply($.value.end,$.sep);else $.value.end=$.sep;else Array.prototype.push.apply($.start,$.sep);delete $.sep}}}class V{constructor(X){this.atNewLine=!0,this.atScalar=!1,this.indent=0,this.offset=0,this.onKeyLine=!1,this.stack=[],this.source=\"\",this.type=\"\",this.lexer=new B.Lexer,this.onNewLine=X}*parse(X,$=!1){if(this.onNewLine&&this.offset===0)this.onNewLine(0);for(let J of this.lexer.lex(X,$))yield*this.next(J);if(!$)yield*this.end()}*next(X){if(this.source=X,Q.env.LOG_TOKENS)console.log(\"|\",G.prettyToken(X));if(this.atScalar){this.atScalar=!1,yield*this.step(),this.offset+=X.length;return}let $=G.tokenType(X);if(!$){let J=`Not a YAML token: ${X}`;yield*this.pop({type:\"error\",offset:this.offset,message:J,source:X}),this.offset+=X.length}else if($===\"scalar\")this.atNewLine=!1,this.atScalar=!0,this.type=\"scalar\";else{switch(this.type=$,yield*this.step(),$){case\"newline\":if(this.atNewLine=!0,this.indent=0,this.onNewLine)this.onNewLine(this.offset+X.length);break;case\"space\":if(this.atNewLine&&X[0]===\" \")this.indent+=X.length;break;case\"explicit-key-ind\":case\"map-value-ind\":case\"seq-item-ind\":if(this.atNewLine)this.indent+=X.length;break;case\"doc-mode\":case\"flow-error-end\":return;default:this.atNewLine=!1}this.offset+=X.length}}*end(){while(this.stack.length>0)yield*this.pop()}get sourceToken(){return{type:this.type,offset:this.offset,indent:this.indent,source:this.source}}*step(){let X=this.peek(1);if(this.type===\"doc-end\"&&X?.type!==\"doc-end\"){while(this.stack.length>0)yield*this.pop();this.stack.push({type:\"doc-end\",offset:this.offset,source:this.source});return}if(!X)return yield*this.stream();switch(X.type){case\"document\":return yield*this.document(X);case\"alias\":case\"scalar\":case\"single-quoted-scalar\":case\"double-quoted-scalar\":return yield*this.scalar(X);case\"block-scalar\":return yield*this.blockScalar(X);case\"block-map\":return yield*this.blockMap(X);case\"block-seq\":return yield*this.blockSequence(X);case\"flow-collection\":return yield*this.flowCollection(X);case\"doc-end\":return yield*this.documentEnd(X)}yield*this.pop()}peek(X){return this.stack[this.stack.length-X]}*pop(X){let $=X??this.stack.pop();if(!$)yield{type:\"error\",offset:this.offset,source:\"\",message:\"Tried to pop an empty stack\"};else if(this.stack.length===0)yield $;else{let J=this.peek(1);if($.type===\"block-scalar\")$.indent=\"indent\"in J?J.indent:0;else if($.type===\"flow-collection\"&&J.type===\"document\")$.indent=0;if($.type===\"flow-collection\")z($);switch(J.type){case\"document\":J.value=$;break;case\"block-scalar\":J.props.push($);break;case\"block-map\":{let W=J.items[J.items.length-1];if(W.value){J.items.push({start:[],key:$,sep:[]}),this.onKeyLine=!0;return}else if(W.sep)W.value=$;else{Object.assign(W,{key:$,sep:[]}),this.onKeyLine=!W.explicitKey;return}break}case\"block-seq\":{let W=J.items[J.items.length-1];if(W.value)J.items.push({start:[],value:$});else W.value=$;break}case\"flow-collection\":{let W=J.items[J.items.length-1];if(!W||W.value)J.items.push({start:[],key:$,sep:[]});else if(W.sep)W.value=$;else Object.assign(W,{key:$,sep:[]});return}default:yield*this.pop(),yield*this.pop($)}if((J.type===\"document\"||J.type===\"block-map\"||J.type===\"block-seq\")&&($.type===\"block-map\"||$.type===\"block-seq\")){let W=$.items[$.items.length-1];if(W&&!W.sep&&!W.value&&W.start.length>0&&_(W.start)===-1&&($.indent===0||W.start.every((K)=>K.type!==\"comment\"||K.indent<$.indent))){if(J.type===\"document\")J.end=W.start;else J.items.push({start:W.start});$.items.splice(-1,1)}}}}*stream(){switch(this.type){case\"directive-line\":yield{type:\"directive\",offset:this.offset,source:this.source};return;case\"byte-order-mark\":case\"space\":case\"comment\":case\"newline\":yield this.sourceToken;return;case\"doc-mode\":case\"doc-start\":{let X={type:\"document\",offset:this.offset,start:[]};if(this.type===\"doc-start\")X.start.push(this.sourceToken);this.stack.push(X);return}}yield{type:\"error\",offset:this.offset,message:`Unexpected ${this.type} token in YAML stream`,source:this.source}}*document(X){if(X.value)return yield*this.lineEnd(X);switch(this.type){case\"doc-start\":{if(_(X.start)!==-1)yield*this.pop(),yield*this.step();else X.start.push(this.sourceToken);return}case\"anchor\":case\"tag\":case\"space\":case\"comment\":case\"newline\":X.start.push(this.sourceToken);return}let $=this.startBlockValue(X);if($)this.stack.push($);else yield{type:\"error\",offset:this.offset,message:`Unexpected ${this.type} token in YAML document`,source:this.source}}*scalar(X){if(this.type===\"map-value-ind\"){let $=U(this.peek(2)),J=H($),W;if(X.end)W=X.end,W.push(this.sourceToken),delete X.end;else W=[this.sourceToken];let K={type:\"block-map\",offset:X.offset,indent:X.indent,items:[{start:J,key:X,sep:W}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=K}else yield*this.lineEnd(X)}*blockScalar(X){switch(this.type){case\"space\":case\"comment\":case\"newline\":X.props.push(this.sourceToken);return;case\"scalar\":if(X.source=this.source,this.atNewLine=!0,this.indent=0,this.onNewLine){let $=this.source.indexOf(`\n`)+1;while($!==0)this.onNewLine(this.offset+$),$=this.source.indexOf(`\n`,$)+1}yield*this.pop();break;default:yield*this.pop(),yield*this.step()}}*blockMap(X){let $=X.items[X.items.length-1];switch(this.type){case\"newline\":if(this.onKeyLine=!1,$.value){let J=\"end\"in $.value?$.value.end:void 0;if((Array.isArray(J)?J[J.length-1]:void 0)?.type===\"comment\")J?.push(this.sourceToken);else X.items.push({start:[this.sourceToken]})}else if($.sep)$.sep.push(this.sourceToken);else $.start.push(this.sourceToken);return;case\"space\":case\"comment\":if($.value)X.items.push({start:[this.sourceToken]});else if($.sep)$.sep.push(this.sourceToken);else{if(this.atIndentedComment($.start,X.indent)){let W=X.items[X.items.length-2]?.value?.end;if(Array.isArray(W)){Array.prototype.push.apply(W,$.start),W.push(this.sourceToken),X.items.pop();return}}$.start.push(this.sourceToken)}return}if(this.indent>=X.indent){let J=!this.onKeyLine&&this.indent===X.indent,W=J&&($.sep||$.explicitKey)&&this.type!==\"seq-item-ind\",K=[];if(W&&$.sep&&!$.value){let F=[];for(let j=0;j<$.sep.length;++j){let R=$.sep[j];switch(R.type){case\"newline\":F.push(j);break;case\"space\":break;case\"comment\":if(R.indent>X.indent)F.length=0;break;default:F.length=0}}if(F.length>=2)K=$.sep.splice(F[1])}switch(this.type){case\"anchor\":case\"tag\":if(W||$.value)K.push(this.sourceToken),X.items.push({start:K}),this.onKeyLine=!0;else if($.sep)$.sep.push(this.sourceToken);else $.start.push(this.sourceToken);return;case\"explicit-key-ind\":if(!$.sep&&!$.explicitKey)$.start.push(this.sourceToken),$.explicitKey=!0;else if(W||$.value)K.push(this.sourceToken),X.items.push({start:K,explicitKey:!0});else this.stack.push({type:\"block-map\",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken],explicitKey:!0}]});this.onKeyLine=!0;return;case\"map-value-ind\":if($.explicitKey)if(!$.sep)if(O($.start,\"newline\"))Object.assign($,{key:null,sep:[this.sourceToken]});else{let F=H($.start);this.stack.push({type:\"block-map\",offset:this.offset,indent:this.indent,items:[{start:F,key:null,sep:[this.sourceToken]}]})}else if($.value)X.items.push({start:[],key:null,sep:[this.sourceToken]});else if(O($.sep,\"map-value-ind\"))this.stack.push({type:\"block-map\",offset:this.offset,indent:this.indent,items:[{start:K,key:null,sep:[this.sourceToken]}]});else if(Y($.key)&&!O($.sep,\"newline\")){let F=H($.start),j=$.key,R=$.sep;R.push(this.sourceToken),delete $.key,delete $.sep,this.stack.push({type:\"block-map\",offset:this.offset,indent:this.indent,items:[{start:F,key:j,sep:R}]})}else if(K.length>0)$.sep=$.sep.concat(K,this.sourceToken);else $.sep.push(this.sourceToken);else if(!$.sep)Object.assign($,{key:null,sep:[this.sourceToken]});else if($.value||W)X.items.push({start:K,key:null,sep:[this.sourceToken]});else if(O($.sep,\"map-value-ind\"))this.stack.push({type:\"block-map\",offset:this.offset,indent:this.indent,items:[{start:[],key:null,sep:[this.sourceToken]}]});else $.sep.push(this.sourceToken);this.onKeyLine=!0;return;case\"alias\":case\"scalar\":case\"single-quoted-scalar\":case\"double-quoted-scalar\":{let F=this.flowScalar(this.type);if(W||$.value)X.items.push({start:K,key:F,sep:[]}),this.onKeyLine=!0;else if($.sep)this.stack.push(F);else Object.assign($,{key:F,sep:[]}),this.onKeyLine=!0;return}default:{let F=this.startBlockValue(X);if(F){if(F.type===\"block-seq\"){if(!$.explicitKey&&$.sep&&!O($.sep,\"newline\")){yield*this.pop({type:\"error\",offset:this.offset,message:\"Unexpected block-seq-ind on same line with key\",source:this.source});return}}else if(J)X.items.push({start:K});this.stack.push(F);return}}}}yield*this.pop(),yield*this.step()}*blockSequence(X){let $=X.items[X.items.length-1];switch(this.type){case\"newline\":if($.value){let J=\"end\"in $.value?$.value.end:void 0;if((Array.isArray(J)?J[J.length-1]:void 0)?.type===\"comment\")J?.push(this.sourceToken);else X.items.push({start:[this.sourceToken]})}else $.start.push(this.sourceToken);return;case\"space\":case\"comment\":if($.value)X.items.push({start:[this.sourceToken]});else{if(this.atIndentedComment($.start,X.indent)){let W=X.items[X.items.length-2]?.value?.end;if(Array.isArray(W)){Array.prototype.push.apply(W,$.start),W.push(this.sourceToken),X.items.pop();return}}$.start.push(this.sourceToken)}return;case\"anchor\":case\"tag\":if($.value||this.indent<=X.indent)break;$.start.push(this.sourceToken);return;case\"seq-item-ind\":if(this.indent!==X.indent)break;if($.value||O($.start,\"seq-item-ind\"))X.items.push({start:[this.sourceToken]});else $.start.push(this.sourceToken);return}if(this.indent>X.indent){let J=this.startBlockValue(X);if(J){this.stack.push(J);return}}yield*this.pop(),yield*this.step()}*flowCollection(X){let $=X.items[X.items.length-1];if(this.type===\"flow-error-end\"){let J;do yield*this.pop(),J=this.peek(1);while(J?.type===\"flow-collection\")}else if(X.end.length===0){switch(this.type){case\"comma\":case\"explicit-key-ind\":if(!$||$.sep)X.items.push({start:[this.sourceToken]});else $.start.push(this.sourceToken);return;case\"map-value-ind\":if(!$||$.value)X.items.push({start:[],key:null,sep:[this.sourceToken]});else if($.sep)$.sep.push(this.sourceToken);else Object.assign($,{key:null,sep:[this.sourceToken]});return;case\"space\":case\"comment\":case\"newline\":case\"anchor\":case\"tag\":if(!$||$.value)X.items.push({start:[this.sourceToken]});else if($.sep)$.sep.push(this.sourceToken);else $.start.push(this.sourceToken);return;case\"alias\":case\"scalar\":case\"single-quoted-scalar\":case\"double-quoted-scalar\":{let W=this.flowScalar(this.type);if(!$||$.value)X.items.push({start:[],key:W,sep:[]});else if($.sep)this.stack.push(W);else Object.assign($,{key:W,sep:[]});return}case\"flow-map-end\":case\"flow-seq-end\":X.end.push(this.sourceToken);return}let J=this.startBlockValue(X);if(J)this.stack.push(J);else yield*this.pop(),yield*this.step()}else{let J=this.peek(2);if(J.type===\"block-map\"&&(this.type===\"map-value-ind\"&&J.indent===X.indent||this.type===\"newline\"&&!J.items[J.items.length-1].sep))yield*this.pop(),yield*this.step();else if(this.type===\"map-value-ind\"&&J.type!==\"flow-collection\"){let W=U(J),K=H(W);z(X);let F=X.end.splice(1,X.end.length);F.push(this.sourceToken);let j={type:\"block-map\",offset:X.offset,indent:X.indent,items:[{start:K,key:X,sep:F}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=j}else yield*this.lineEnd(X)}}flowScalar(X){if(this.onNewLine){let $=this.source.indexOf(`\n`)+1;while($!==0)this.onNewLine(this.offset+$),$=this.source.indexOf(`\n`,$)+1}return{type:X,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(X){switch(this.type){case\"alias\":case\"scalar\":case\"single-quoted-scalar\":case\"double-quoted-scalar\":return this.flowScalar(this.type);case\"block-scalar-header\":return{type:\"block-scalar\",offset:this.offset,indent:this.indent,props:[this.sourceToken],source:\"\"};case\"flow-map-start\":case\"flow-seq-start\":return{type:\"flow-collection\",offset:this.offset,indent:this.indent,start:this.sourceToken,items:[],end:[]};case\"seq-item-ind\":return{type:\"block-seq\",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken]}]};case\"explicit-key-ind\":{this.onKeyLine=!0;let $=U(X),J=H($);return J.push(this.sourceToken),{type:\"block-map\",offset:this.offset,indent:this.indent,items:[{start:J,explicitKey:!0}]}}case\"map-value-ind\":{this.onKeyLine=!0;let $=U(X),J=H($);return{type:\"block-map\",offset:this.offset,indent:this.indent,items:[{start:J,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment(X,$){if(this.type!==\"comment\")return!1;if(this.indent<=$)return!1;return X.every((J)=>J.type===\"newline\"||J.type===\"space\")}*documentEnd(X){if(this.type!==\"doc-mode\"){if(X.end)X.end.push(this.sourceToken);else X.end=[this.sourceToken];if(this.type===\"newline\")yield*this.pop()}}*lineEnd(X){switch(this.type){case\"comma\":case\"doc-start\":case\"doc-end\":case\"flow-seq-end\":case\"flow-map-end\":case\"map-value-ind\":yield*this.pop(),yield*this.step();break;case\"newline\":this.onKeyLine=!1;case\"space\":case\"comment\":default:if(X.end)X.end.push(this.sourceToken);else X.end=[this.sourceToken];if(this.type===\"newline\")yield*this.pop()}}}Z.Parser=V}),H8=S((Z)=>{var Q=aZ(),G=x0(),B=f0(),O=xZ(),_=y(),Y=oZ(),U=tZ();function H(J){let W=J.prettyErrors!==!1;return{lineCounter:J.lineCounter||W&&new Y.LineCounter||null,prettyErrors:W}}function z(J,W={}){let{lineCounter:K,prettyErrors:F}=H(W),j=new U.Parser(K?.addNewLine),R=new Q.Composer(W),q=Array.from(R.compose(j.parse(J)));if(F&&K)for(let I of q)I.errors.forEach(B.prettifyError(J,K)),I.warnings.forEach(B.prettifyError(J,K));if(q.length>0)return q;return Object.assign([],{empty:!0},R.streamInfo())}function V(J,W={}){let{lineCounter:K,prettyErrors:F}=H(W),j=new U.Parser(K?.addNewLine),R=new Q.Composer(W),q=null;for(let I of R.compose(j.parse(J),!0,J.length))if(!q)q=I;else if(q.options.logLevel!==\"silent\"){q.errors.push(new B.YAMLParseError(I.range.slice(0,2),\"MULTIPLE_DOCS\",\"Source contains multiple documents; please use YAML.parseAllDocuments()\"));break}if(F&&K)q.errors.forEach(B.prettifyError(J,K)),q.warnings.forEach(B.prettifyError(J,K));return q}function X(J,W,K){let F=void 0;if(typeof W===\"function\")F=W;else if(K===void 0&&W&&typeof W===\"object\")K=W;let j=V(J,K);if(!j)return null;if(j.warnings.forEach((R)=>O.warn(j.options.logLevel,R)),j.errors.length>0)if(j.options.logLevel!==\"silent\")throw j.errors[0];else j.errors=[];return j.toJS(Object.assign({reviver:F},K))}function $(J,W,K){let F=null;if(typeof W===\"function\"||Array.isArray(W))F=W;else if(K===void 0&&W)K=W;if(typeof K===\"string\")K=K.length;if(typeof K===\"number\"){let j=Math.round(K);K=j<1?void 0:j>8?{indent:8}:{indent:j}}if(J===void 0){let{keepUndefined:j}=K??W??{};if(!j)return}if(_.isDocument(J)&&!F)return J.toString(K);return new G.Document(J,F,K).toString(K)}Z.parse=X,Z.parseAllDocuments=z,Z.parseDocument=V,Z.stringify=$}),eZ=S((Z)=>{var Q=aZ(),G=x0(),B=lZ(),O=f0(),_=C0(),Y=y(),U=$0(),H=b(),z=z0(),V=Q0(),X=GZ(),$=rZ(),J=oZ(),W=tZ(),K=H8(),F=S0();Z.Composer=Q.Composer,Z.Document=G.Document,Z.Schema=B.Schema,Z.YAMLError=O.YAMLError,Z.YAMLParseError=O.YAMLParseError,Z.YAMLWarning=O.YAMLWarning,Z.Alias=_.Alias,Z.isAlias=Y.isAlias,Z.isCollection=Y.isCollection,Z.isDocument=Y.isDocument,Z.isMap=Y.isMap,Z.isNode=Y.isNode,Z.isPair=Y.isPair,Z.isScalar=Y.isScalar,Z.isSeq=Y.isSeq,Z.Pair=U.Pair,Z.Scalar=H.Scalar,Z.YAMLMap=z.YAMLMap,Z.YAMLSeq=V.YAMLSeq,Z.CST=X,Z.Lexer=$.Lexer,Z.LineCounter=J.LineCounter,Z.Parser=W.Parser,Z.parse=K.parse,Z.parseAllDocuments=K.parseAllDocuments,Z.parseDocument=K.parseDocument,Z.stringify=K.stringify,Z.visit=F.visit,Z.visitAsync=F.visitAsync});var Z6=[\"none\",\"acpx\",\"llama-cpp\",\"ollama\",\"claude-code\",\"codex\",\"opencode\",\"anthropic\",\"openrouter\",\"openai-compatible\",\"command\"],U8=Z6.filter((Z)=>Z!==\"command\");var t5=new Set(Z6),e5=new Set(U8);var X6=\"unicode61\";function K8(Z){return Z.replace(/\\s+/g,\" \").trim().toLowerCase()}function $6(Z){Z.exec(`\n\t\tCREATE VIRTUAL TABLE IF NOT EXISTS memories_fts USING fts5(\n\t\t\tcontent,\n\t\t\tcontent='memories',\n\t\t\tcontent_rowid='rowid',\n\t\t\ttokenize='${X6}'\n\t\t);\n\t`),Z.exec(`\n\t\tCREATE TRIGGER IF NOT EXISTS memories_ai AFTER INSERT ON memories BEGIN\n\t\t\tINSERT INTO memories_fts(rowid, content) VALUES (new.rowid, new.content);\n\t\tEND;\n\t`),Z.exec(`\n\t\tCREATE TRIGGER IF NOT EXISTS memories_ad AFTER DELETE ON memories BEGIN\n\t\t\tINSERT INTO memories_fts(memories_fts, rowid, content) VALUES('delete', old.rowid, old.content);\n\t\tEND;\n\t`),Z.exec(`\n\t\tCREATE TRIGGER IF NOT EXISTS memories_au AFTER UPDATE OF content ON memories BEGIN\n\t\t\tINSERT INTO memories_fts(memories_fts, rowid, content) VALUES('delete', old.rowid, old.content);\n\t\t\tINSERT INTO memories_fts(rowid, content) VALUES (new.rowid, new.content);\n\t\tEND;\n\t`)}function _8(Z){Z.exec(\"DROP TRIGGER IF EXISTS memories_ai\"),Z.exec(\"DROP TRIGGER IF EXISTS memories_ad\"),Z.exec(\"DROP TRIGGER IF EXISTS memories_au\"),Z.exec(\"DROP TABLE IF EXISTS memories_fts\"),$6(Z),Z.exec(\"INSERT INTO memories_fts(rowid, content) SELECT rowid, content FROM memories\")}function O8(Z){let Q=Z.prepare(\"SELECT sql FROM sqlite_master WHERE name = 'memories_fts' AND type = 'table'\").get();return typeof Q?.sql===\"string\"?Q.sql:null}function F8(Z){if(Z===null)return!1;let Q=K8(Z);if(Q.includes(\"porter unicode61\"))return!0;return!Q.includes(`tokenize='${X6}'`)}function j8(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS schema_migrations (\n\t\t\tversion INTEGER PRIMARY KEY,\n\t\t\tapplied_at TEXT NOT NULL,\n\t\t\tchecksum TEXT NOT NULL\n\t\t);\n\n\t\tCREATE TABLE IF NOT EXISTS conversations (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tsession_id TEXT NOT NULL,\n\t\t\tharness TEXT NOT NULL,\n\t\t\tstarted_at TEXT NOT NULL,\n\t\t\tended_at TEXT,\n\t\t\tsummary TEXT,\n\t\t\ttopics TEXT,\n\t\t\tdecisions TEXT,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tupdated_at TEXT NOT NULL,\n\t\t\tupdated_by TEXT NOT NULL,\n\t\t\tvector_clock TEXT NOT NULL DEFAULT '{}',\n\t\t\tversion INTEGER DEFAULT 1,\n\t\t\tmanual_override INTEGER DEFAULT 0\n\t\t);\n\n\t\tCREATE TABLE IF NOT EXISTS memories (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\ttype TEXT NOT NULL DEFAULT 'fact',\n\t\t\tcategory TEXT,\n\t\t\tcontent TEXT NOT NULL,\n\t\t\tconfidence REAL DEFAULT 1.0,\n\t\t\timportance REAL DEFAULT 0.5,\n\t\t\tsource_id TEXT,\n\t\t\tsource_type TEXT,\n\t\t\ttags TEXT,\n\t\t\twho TEXT,\n\t\t\twhy TEXT,\n\t\t\tproject TEXT,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tupdated_at TEXT NOT NULL,\n\t\t\tupdated_by TEXT NOT NULL DEFAULT 'system',\n\t\t\tlast_accessed TEXT,\n\t\t\taccess_count INTEGER DEFAULT 0,\n\t\t\tvector_clock TEXT NOT NULL DEFAULT '{}',\n\t\t\tversion INTEGER DEFAULT 1,\n\t\t\tmanual_override INTEGER DEFAULT 0,\n\t\t\tpinned INTEGER DEFAULT 0\n\t\t);\n\n\t\tCREATE TABLE IF NOT EXISTS embeddings (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tcontent_hash TEXT NOT NULL UNIQUE,\n\t\t\tvector BLOB NOT NULL,\n\t\t\tdimensions INTEGER NOT NULL,\n\t\t\tsource_type TEXT NOT NULL,\n\t\t\tsource_id TEXT NOT NULL,\n\t\t\tchunk_text TEXT NOT NULL,\n\t\t\tcreated_at TEXT NOT NULL\n\t\t);\n\n\t\t-- Indexes\n\t\tCREATE INDEX IF NOT EXISTS idx_conversations_session\n\t\t\tON conversations(session_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_conversations_harness\n\t\t\tON conversations(harness);\n\t\tCREATE INDEX IF NOT EXISTS idx_memories_type\n\t\t\tON memories(type);\n\t\tCREATE INDEX IF NOT EXISTS idx_memories_category\n\t\t\tON memories(category);\n\t\tCREATE INDEX IF NOT EXISTS idx_memories_pinned\n\t\t\tON memories(pinned);\n\t\tCREATE INDEX IF NOT EXISTS idx_memories_importance\n\t\t\tON memories(importance DESC);\n\t\tCREATE INDEX IF NOT EXISTS idx_memories_created\n\t\t\tON memories(created_at DESC);\n\t\tCREATE INDEX IF NOT EXISTS idx_embeddings_source\n\t\t\tON embeddings(source_type, source_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_embeddings_hash\n\t\t\tON embeddings(content_hash);\n\t`);try{Z.exec(`\n\t\t\tCREATE VIRTUAL TABLE IF NOT EXISTS vec_embeddings USING vec0(\n\t\t\t\tembedding FLOAT[768]\n\t\t\t);\n\t\t`)}catch{}$6(Z)}function R8(Z,Q,G){return Z.prepare(`PRAGMA table_info(${Q})`).all().some((O)=>O.name===G)}function u(Z,Q,G,B){if(!R8(Z,Q,G))Z.exec(`ALTER TABLE ${Q} ADD COLUMN ${G} ${B}`)}function q8(Z){u(Z,\"memories\",\"content_hash\",\"TEXT\"),u(Z,\"memories\",\"normalized_content\",\"TEXT\"),u(Z,\"memories\",\"is_deleted\",\"INTEGER DEFAULT 0\"),u(Z,\"memories\",\"deleted_at\",\"TEXT\"),u(Z,\"memories\",\"extraction_status\",\"TEXT DEFAULT 'none'\"),u(Z,\"memories\",\"embedding_model\",\"TEXT\"),u(Z,\"memories\",\"extraction_model\",\"TEXT\"),u(Z,\"memories\",\"update_count\",\"INTEGER DEFAULT 0\"),u(Z,\"memories\",\"who\",\"TEXT\"),u(Z,\"memories\",\"why\",\"TEXT\"),u(Z,\"memories\",\"project\",\"TEXT\"),u(Z,\"memories\",\"pinned\",\"INTEGER DEFAULT 0\"),u(Z,\"memories\",\"importance\",\"REAL DEFAULT 0.5\"),u(Z,\"memories\",\"last_accessed\",\"TEXT\"),u(Z,\"memories\",\"access_count\",\"INTEGER DEFAULT 0\"),Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS memory_history (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tmemory_id TEXT NOT NULL,\n\t\t\tevent TEXT NOT NULL,\n\t\t\told_content TEXT,\n\t\t\tnew_content TEXT,\n\t\t\tchanged_by TEXT NOT NULL,\n\t\t\treason TEXT,\n\t\t\tmetadata TEXT,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tFOREIGN KEY (memory_id) REFERENCES memories(id)\n\t\t);\n\t`),Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS memory_jobs (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tmemory_id TEXT NOT NULL,\n\t\t\tjob_type TEXT NOT NULL,\n\t\t\tstatus TEXT NOT NULL DEFAULT 'pending',\n\t\t\tpayload TEXT,\n\t\t\tresult TEXT,\n\t\t\tattempts INTEGER DEFAULT 0,\n\t\t\tmax_attempts INTEGER DEFAULT 3,\n\t\t\tleased_at TEXT,\n\t\t\tcompleted_at TEXT,\n\t\t\tfailed_at TEXT,\n\t\t\terror TEXT,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tupdated_at TEXT NOT NULL,\n\t\t\tFOREIGN KEY (memory_id) REFERENCES memories(id)\n\t\t);\n\t`),Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS entities (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tname TEXT NOT NULL UNIQUE,\n\t\t\tentity_type TEXT NOT NULL,\n\t\t\tdescription TEXT,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tupdated_at TEXT NOT NULL\n\t\t);\n\t`),Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS relations (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tsource_entity_id TEXT NOT NULL,\n\t\t\ttarget_entity_id TEXT NOT NULL,\n\t\t\trelation_type TEXT NOT NULL,\n\t\t\tstrength REAL DEFAULT 1.0,\n\t\t\tmetadata TEXT,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tFOREIGN KEY (source_entity_id) REFERENCES entities(id),\n\t\t\tFOREIGN KEY (target_entity_id) REFERENCES entities(id)\n\t\t);\n\t`),Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS memory_entity_mentions (\n\t\t\tmemory_id TEXT NOT NULL,\n\t\t\tentity_id TEXT NOT NULL,\n\t\t\tPRIMARY KEY (memory_id, entity_id),\n\t\t\tFOREIGN KEY (memory_id) REFERENCES memories(id),\n\t\t\tFOREIGN KEY (entity_id) REFERENCES entities(id)\n\t\t);\n\t`),Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS schema_migrations_audit (\n\t\t\tid INTEGER PRIMARY KEY AUTOINCREMENT,\n\t\t\tversion INTEGER NOT NULL,\n\t\t\tapplied_at TEXT NOT NULL,\n\t\t\tduration_ms INTEGER,\n\t\t\tchecksum TEXT\n\t\t);\n\t`),Z.exec(`\n\t\tCREATE INDEX IF NOT EXISTS idx_memories_content_hash\n\t\t\tON memories(content_hash);\n\t\tCREATE INDEX IF NOT EXISTS idx_memories_is_deleted\n\t\t\tON memories(is_deleted);\n\t\tCREATE INDEX IF NOT EXISTS idx_memories_extraction_status\n\t\t\tON memories(extraction_status);\n\t\tCREATE INDEX IF NOT EXISTS idx_memory_history_memory_id\n\t\t\tON memory_history(memory_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_memory_jobs_status\n\t\t\tON memory_jobs(status);\n\t\tCREATE INDEX IF NOT EXISTS idx_memory_jobs_memory_id\n\t\t\tON memory_jobs(memory_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_relations_source\n\t\t\tON relations(source_entity_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_relations_target\n\t\t\tON relations(target_entity_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_memory_entity_mentions_entity\n\t\t\tON memory_entity_mentions(entity_id);\n\t`)}function RZ(Z,Q,G,B){if(Z.prepare(`PRAGMA table_info(${Q})`).all().some((_)=>_.name===G))return!1;return Z.exec(`ALTER TABLE ${Q} ADD COLUMN ${G} ${B}`),!0}function L8(Z){RZ(Z,\"memories\",\"why\",\"TEXT\"),RZ(Z,\"memories\",\"project\",\"TEXT\"),Z.exec(\"DROP INDEX IF EXISTS idx_memories_content_hash\"),Z.exec(`\n\t\tUPDATE memories\n\t\tSET content_hash = NULL\n\t\tWHERE content_hash IS NOT NULL\n\t\t AND is_deleted = 0\n\t\t AND id NOT IN (\n\t\t\tSELECT id FROM (\n\t\t\t\tSELECT id, ROW_NUMBER() OVER (\n\t\t\t\t\tPARTITION BY content_hash\n\t\t\t\t\tORDER BY created_at DESC, rowid DESC\n\t\t\t\t) AS rn\n\t\t\t\tFROM memories\n\t\t\t\tWHERE content_hash IS NOT NULL\n\t\t\t\t AND is_deleted = 0\n\t\t\t) ranked\n\t\t\tWHERE rn = 1\n\t\t )\n\t`),Z.exec(`\n\t\tCREATE UNIQUE INDEX IF NOT EXISTS idx_memories_content_hash_unique\n\t\t\tON memories(content_hash)\n\t\t\tWHERE content_hash IS NOT NULL AND is_deleted = 0\n\t`)}function A8(Z,Q,G){return Z.prepare(`PRAGMA table_info(${Q})`).all().some((O)=>O.name===G)}function n0(Z,Q,G,B){if(!A8(Z,Q,G))Z.exec(`ALTER TABLE ${Q} ADD COLUMN ${G} ${B}`)}function I8(Z){n0(Z,\"memory_history\",\"actor_type\",\"TEXT\"),n0(Z,\"memory_history\",\"session_id\",\"TEXT\"),n0(Z,\"memory_history\",\"request_id\",\"TEXT\"),Z.exec(`\n\t\tCREATE INDEX IF NOT EXISTS idx_memories_deleted_at\n\t\t\tON memories(deleted_at)\n\t\t\tWHERE is_deleted = 1;\n\t`),Z.exec(`\n\t\tCREATE INDEX IF NOT EXISTS idx_memory_history_created_at\n\t\t\tON memory_history(created_at);\n\t`),Z.exec(`\n\t\tCREATE INDEX IF NOT EXISTS idx_memory_jobs_completed_at\n\t\t\tON memory_jobs(completed_at)\n\t\t\tWHERE status = 'completed';\n\t`),Z.exec(`\n\t\tCREATE INDEX IF NOT EXISTS idx_memory_jobs_failed_at\n\t\t\tON memory_jobs(failed_at)\n\t\t\tWHERE status = 'dead';\n\t`)}function M8(Z,Q,G){return Z.prepare(`PRAGMA table_info(${Q})`).all().some((O)=>O.name===G)}function s(Z,Q,G,B){if(!M8(Z,Q,G))Z.exec(`ALTER TABLE ${Q} ADD COLUMN ${G} ${B}`)}function D8(Z){s(Z,\"entities\",\"canonical_name\",\"TEXT\"),s(Z,\"entities\",\"mentions\",\"INTEGER DEFAULT 0\"),s(Z,\"entities\",\"embedding\",\"BLOB\"),s(Z,\"relations\",\"mentions\",\"INTEGER DEFAULT 1\"),s(Z,\"relations\",\"confidence\",\"REAL DEFAULT 0.5\"),s(Z,\"relations\",\"updated_at\",\"TEXT\"),s(Z,\"memory_entity_mentions\",\"mention_text\",\"TEXT\"),s(Z,\"memory_entity_mentions\",\"confidence\",\"REAL\"),s(Z,\"memory_entity_mentions\",\"created_at\",\"TEXT\"),Z.exec(\"CREATE INDEX IF NOT EXISTS idx_entities_canonical_name ON entities(canonical_name)\"),Z.exec(\"CREATE INDEX IF NOT EXISTS idx_relations_composite ON relations(source_entity_id, relation_type)\")}function qZ(Z,Q,G){return Z.prepare(`PRAGMA table_info(${Q})`).all().some((O)=>O.name===G)}function N8(Z){if(!qZ(Z,\"memories\",\"idempotency_key\"))Z.exec(\"ALTER TABLE memories ADD COLUMN idempotency_key TEXT\");if(Z.exec(`CREATE UNIQUE INDEX IF NOT EXISTS idx_memories_idempotency_key\n\t\t ON memories(idempotency_key)\n\t\t WHERE idempotency_key IS NOT NULL`),!qZ(Z,\"memories\",\"runtime_path\"))Z.exec(\"ALTER TABLE memories ADD COLUMN runtime_path TEXT\")}function T8(Z,Q,G){return Z.prepare(`PRAGMA table_info(${Q})`).all().some((O)=>O.name===G)}function S8(Z){if(Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS documents (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tsource_url TEXT,\n\t\t\tsource_type TEXT NOT NULL,\n\t\t\tcontent_type TEXT,\n\t\t\tcontent_hash TEXT,\n\t\t\ttitle TEXT,\n\t\t\traw_content TEXT,\n\t\t\tstatus TEXT NOT NULL DEFAULT 'queued',\n\t\t\terror TEXT,\n\t\t\tconnector_id TEXT,\n\t\t\tchunk_count INTEGER NOT NULL DEFAULT 0,\n\t\t\tmemory_count INTEGER NOT NULL DEFAULT 0,\n\t\t\tmetadata_json TEXT,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tupdated_at TEXT NOT NULL,\n\t\t\tcompleted_at TEXT\n\t\t)\n\t`),Z.exec(`CREATE INDEX IF NOT EXISTS idx_documents_status\n\t\t ON documents(status)`),Z.exec(`CREATE INDEX IF NOT EXISTS idx_documents_source_url\n\t\t ON documents(source_url)`),Z.exec(`CREATE INDEX IF NOT EXISTS idx_documents_connector_id\n\t\t ON documents(connector_id)`),Z.exec(`CREATE INDEX IF NOT EXISTS idx_documents_content_hash\n\t\t ON documents(content_hash)`),Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS document_memories (\n\t\t\tdocument_id TEXT NOT NULL REFERENCES documents(id),\n\t\t\tmemory_id TEXT NOT NULL REFERENCES memories(id),\n\t\t\tchunk_index INTEGER,\n\t\t\tPRIMARY KEY (document_id, memory_id)\n\t\t)\n\t`),Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS connectors (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tprovider TEXT NOT NULL,\n\t\t\tdisplay_name TEXT,\n\t\t\tconfig_json TEXT NOT NULL,\n\t\t\tcursor_json TEXT,\n\t\t\tstatus TEXT NOT NULL DEFAULT 'idle',\n\t\t\tlast_sync_at TEXT,\n\t\t\tlast_error TEXT,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tupdated_at TEXT NOT NULL\n\t\t)\n\t`),Z.exec(`CREATE INDEX IF NOT EXISTS idx_connectors_provider\n\t\t ON connectors(provider)`),!T8(Z,\"memory_jobs\",\"document_id\"))Z.exec(\"ALTER TABLE memory_jobs ADD COLUMN document_id TEXT\")}function C8(Z){if(Z.prepare(\"SELECT name FROM sqlite_master WHERE type='table' AND name='embeddings'\").all().length===0)return;Z.exec(`\n\t\tDELETE FROM embeddings\n\t\tWHERE rowid NOT IN (\n\t\t\tSELECT MIN(rowid) FROM embeddings\n\t\t\tGROUP BY content_hash\n\t\t)\n\t`),Z.exec(\"DROP INDEX IF EXISTS idx_embeddings_hash\"),Z.exec(`\n\t\tCREATE UNIQUE INDEX IF NOT EXISTS idx_embeddings_content_hash_unique\n\t\t\tON embeddings(content_hash)\n\t`)}function E8(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS summary_jobs (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tsession_key TEXT,\n\t\t\tharness TEXT NOT NULL,\n\t\t\tproject TEXT,\n\t\t\ttranscript TEXT NOT NULL,\n\t\t\tstatus TEXT NOT NULL DEFAULT 'pending',\n\t\t\tresult TEXT,\n\t\t\tattempts INTEGER DEFAULT 0,\n\t\t\tmax_attempts INTEGER DEFAULT 3,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tcompleted_at TEXT,\n\t\t\terror TEXT\n\t\t)\n\t`),Z.exec(`CREATE INDEX IF NOT EXISTS idx_summary_jobs_status\n\t\t ON summary_jobs(status)`)}function P8(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS umap_cache (\n\t\t\tid INTEGER PRIMARY KEY,\n\t\t\tdimensions INTEGER NOT NULL,\n\t\t\tembedding_count INTEGER NOT NULL,\n\t\t\tpayload TEXT NOT NULL,\n\t\t\tcreated_at TEXT NOT NULL\n\t\t)\n\t`)}function w8(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS session_scores (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tsession_key TEXT NOT NULL,\n\t\t\tproject TEXT,\n\t\t\tharness TEXT,\n\t\t\tscore REAL NOT NULL,\n\t\t\tmemories_recalled INTEGER,\n\t\t\tmemories_used INTEGER,\n\t\t\tnovel_context_count INTEGER,\n\t\t\treasoning TEXT,\n\t\t\tcreated_at TEXT NOT NULL\n\t\t);\n\t\tCREATE INDEX IF NOT EXISTS idx_session_scores_project\n\t\t\tON session_scores(project, created_at);\n\t\tCREATE INDEX IF NOT EXISTS idx_session_scores_session\n\t\t\tON session_scores(session_key);\n\t`)}function y8(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS scheduled_tasks (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tname TEXT NOT NULL,\n\t\t\tprompt TEXT NOT NULL,\n\t\t\tcron_expression TEXT NOT NULL,\n\t\t\tharness TEXT NOT NULL,\n\t\t\tworking_directory TEXT,\n\t\t\tenabled INTEGER NOT NULL DEFAULT 1,\n\t\t\tlast_run_at TEXT,\n\t\t\tnext_run_at TEXT,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tupdated_at TEXT NOT NULL\n\t\t);\n\t\tCREATE INDEX IF NOT EXISTS idx_scheduled_tasks_enabled_next\n\t\t\tON scheduled_tasks(enabled, next_run_at);\n\n\t\tCREATE TABLE IF NOT EXISTS task_runs (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\ttask_id TEXT NOT NULL REFERENCES scheduled_tasks(id) ON DELETE CASCADE,\n\t\t\tstatus TEXT NOT NULL DEFAULT 'pending',\n\t\t\tstarted_at TEXT NOT NULL,\n\t\t\tcompleted_at TEXT,\n\t\t\texit_code INTEGER,\n\t\t\tstdout TEXT,\n\t\t\tstderr TEXT,\n\t\t\terror TEXT\n\t\t);\n\t\tCREATE INDEX IF NOT EXISTS idx_task_runs_task_id\n\t\t\tON task_runs(task_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_task_runs_status\n\t\t\tON task_runs(status);\n\t`)}function LZ(Z,Q,G,B){if(!Z.prepare(`PRAGMA table_info(${Q})`).all().some((_)=>_.name===G))Z.exec(`ALTER TABLE ${Q} ADD COLUMN ${G} ${B}`)}function k8(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS ingestion_jobs (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tsource_path TEXT NOT NULL,\n\t\t\tsource_type TEXT NOT NULL,\n\t\t\tfile_hash TEXT,\n\t\t\tstatus TEXT NOT NULL DEFAULT 'pending',\n\t\t\tchunks_total INTEGER DEFAULT 0,\n\t\t\tchunks_processed INTEGER DEFAULT 0,\n\t\t\tmemories_created INTEGER DEFAULT 0,\n\t\t\tstarted_at TEXT NOT NULL,\n\t\t\tcompleted_at TEXT,\n\t\t\terror TEXT\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_ingestion_jobs_status\n\t\t\tON ingestion_jobs(status);\n\t\tCREATE INDEX IF NOT EXISTS idx_ingestion_jobs_file_hash\n\t\t\tON ingestion_jobs(file_hash);\n\t\tCREATE INDEX IF NOT EXISTS idx_ingestion_jobs_source_path\n\t\t\tON ingestion_jobs(source_path);\n\t`),LZ(Z,\"memories\",\"source_path\",\"TEXT\"),LZ(Z,\"memories\",\"source_section\",\"TEXT\")}function x8(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS telemetry_events (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tevent TEXT NOT NULL,\n\t\t\ttimestamp TEXT NOT NULL,\n\t\t\tproperties TEXT NOT NULL,\n\t\t\tsent_to_posthog INTEGER NOT NULL DEFAULT 0,\n\t\t\tcreated_at TEXT NOT NULL\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_telemetry_events_event\n\t\t\tON telemetry_events(event);\n\t\tCREATE INDEX IF NOT EXISTS idx_telemetry_events_timestamp\n\t\t\tON telemetry_events(timestamp);\n\t\tCREATE INDEX IF NOT EXISTS idx_telemetry_events_unsent\n\t\t\tON telemetry_events(sent_to_posthog) WHERE sent_to_posthog = 0;\n\t`)}function AZ(Z,Q,G,B){if(!Z.prepare(`PRAGMA table_info(${Q})`).all().some((_)=>_.name===G))Z.exec(`ALTER TABLE ${Q} ADD COLUMN ${G} ${B}`)}function f8(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS session_memories (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tsession_key TEXT NOT NULL,\n\t\t\tmemory_id TEXT NOT NULL,\n\t\t\tsource TEXT NOT NULL,\n\t\t\teffective_score REAL,\n\t\t\tpredictor_score REAL,\n\t\t\tfinal_score REAL NOT NULL,\n\t\t\trank INTEGER NOT NULL,\n\t\t\twas_injected INTEGER NOT NULL,\n\t\t\trelevance_score REAL,\n\t\t\tfts_hit_count INTEGER NOT NULL DEFAULT 0,\n\t\t\tagent_preference TEXT,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tUNIQUE(session_key, memory_id)\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_session_memories_session\n\t\t\tON session_memories(session_key);\n\t\tCREATE INDEX IF NOT EXISTS idx_session_memories_memory\n\t\t\tON session_memories(memory_id);\n\t`),AZ(Z,\"session_scores\",\"confidence\",\"REAL\"),AZ(Z,\"session_scores\",\"continuity_reasoning\",\"TEXT\")}function g8(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS session_checkpoints (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tsession_key TEXT NOT NULL,\n\t\t\tharness TEXT NOT NULL,\n\t\t\tproject TEXT,\n\t\t\tproject_normalized TEXT,\n\t\t\ttrigger TEXT NOT NULL,\n\t\t\tdigest TEXT NOT NULL,\n\t\t\tprompt_count INTEGER NOT NULL,\n\t\t\tmemory_queries TEXT,\n\t\t\trecent_remembers TEXT,\n\t\t\tcreated_at TEXT NOT NULL\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_checkpoints_session\n\t\t\tON session_checkpoints(session_key, created_at DESC);\n\t\tCREATE INDEX IF NOT EXISTS idx_checkpoints_project\n\t\t\tON session_checkpoints(project_normalized, created_at DESC);\n\t`)}function v8(Z){let Q=Z.prepare(\"PRAGMA table_info(scheduled_tasks)\").all(),G=new Set(Q.flatMap((B)=>typeof B.name===\"string\"?[B.name]:[]));if(!G.has(\"skill_name\"))Z.exec(\"ALTER TABLE scheduled_tasks ADD COLUMN skill_name TEXT\");if(!G.has(\"skill_mode\"))Z.exec(`ALTER TABLE scheduled_tasks ADD COLUMN skill_mode TEXT\n\t\t\t CHECK (skill_mode IN ('inject', 'slash') OR skill_mode IS NULL)`)}function b8(Z){if(Z.prepare(\"SELECT name FROM sqlite_master WHERE type='table' AND name='skill_meta'\").get())return;Z.exec(`\n\t\tCREATE TABLE skill_meta (\n\t\t\tentity_id TEXT PRIMARY KEY REFERENCES entities(id),\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tversion TEXT,\n\t\t\tauthor TEXT,\n\t\t\tlicense TEXT,\n\t\t\tsource TEXT NOT NULL,\n\t\t\trole TEXT NOT NULL DEFAULT 'utility',\n\t\t\ttriggers TEXT,\n\t\t\ttags TEXT,\n\t\t\tpermissions TEXT,\n\t\t\tenriched INTEGER DEFAULT 0,\n\t\t\tinstalled_at TEXT NOT NULL,\n\t\t\tlast_used_at TEXT,\n\t\t\tuse_count INTEGER DEFAULT 0,\n\t\t\timportance REAL DEFAULT 0.7,\n\t\t\tdecay_rate REAL DEFAULT 0.99,\n\t\t\tfs_path TEXT NOT NULL,\n\t\t\tuninstalled_at TEXT,\n\t\t\tcreated_at TEXT NOT NULL DEFAULT (datetime('now')),\n\t\t\tupdated_at TEXT NOT NULL DEFAULT (datetime('now'))\n\t\t);\n\n\t\tCREATE INDEX idx_skill_meta_agent ON skill_meta(agent_id);\n\t\tCREATE INDEX idx_skill_meta_source ON skill_meta(source);\n\t`)}function h8(Z){let Q=Z.prepare(\"PRAGMA table_info(entities)\").all();if(!new Set(Q.flatMap((B)=>typeof B.name===\"string\"?[B.name]:[])).has(\"agent_id\"))Z.exec(\"ALTER TABLE entities ADD COLUMN agent_id TEXT NOT NULL DEFAULT 'default'\");Z.exec(\"CREATE INDEX IF NOT EXISTS idx_entities_agent ON entities(agent_id)\"),Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS entity_aspects (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tentity_id TEXT NOT NULL REFERENCES entities(id) ON DELETE CASCADE,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tname TEXT NOT NULL,\n\t\t\tcanonical_name TEXT NOT NULL,\n\t\t\tweight REAL NOT NULL DEFAULT 0.5,\n\t\t\tcreated_at TEXT NOT NULL DEFAULT (datetime('now')),\n\t\t\tupdated_at TEXT NOT NULL DEFAULT (datetime('now')),\n\t\t\tUNIQUE(entity_id, canonical_name)\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_entity_aspects_entity ON entity_aspects(entity_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_entity_aspects_agent ON entity_aspects(agent_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_entity_aspects_weight ON entity_aspects(weight DESC);\n\t`),Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS entity_attributes (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\taspect_id TEXT REFERENCES entity_aspects(id) ON DELETE SET NULL,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tmemory_id TEXT REFERENCES memories(id) ON DELETE SET NULL,\n\t\t\tkind TEXT NOT NULL,\n\t\t\tcontent TEXT NOT NULL,\n\t\t\tnormalized_content TEXT NOT NULL,\n\t\t\tconfidence REAL NOT NULL DEFAULT 0.0,\n\t\t\timportance REAL NOT NULL DEFAULT 0.5,\n\t\t\tstatus TEXT NOT NULL DEFAULT 'active',\n\t\t\tsuperseded_by TEXT,\n\t\t\tcreated_at TEXT NOT NULL DEFAULT (datetime('now')),\n\t\t\tupdated_at TEXT NOT NULL DEFAULT (datetime('now'))\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_entity_attributes_aspect ON entity_attributes(aspect_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_entity_attributes_agent ON entity_attributes(agent_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_entity_attributes_kind ON entity_attributes(kind);\n\t\tCREATE INDEX IF NOT EXISTS idx_entity_attributes_status ON entity_attributes(status);\n\t`),Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS entity_dependencies (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tsource_entity_id TEXT NOT NULL REFERENCES entities(id) ON DELETE CASCADE,\n\t\t\ttarget_entity_id TEXT NOT NULL REFERENCES entities(id) ON DELETE CASCADE,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\taspect_id TEXT REFERENCES entity_aspects(id) ON DELETE SET NULL,\n\t\t\tdependency_type TEXT NOT NULL,\n\t\t\tstrength REAL NOT NULL DEFAULT 0.5,\n\t\t\tcreated_at TEXT NOT NULL DEFAULT (datetime('now')),\n\t\t\tupdated_at TEXT NOT NULL DEFAULT (datetime('now'))\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_entity_dependencies_source ON entity_dependencies(source_entity_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_entity_dependencies_target ON entity_dependencies(target_entity_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_entity_dependencies_agent ON entity_dependencies(agent_id);\n\t`),Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS task_meta (\n\t\t\tentity_id TEXT PRIMARY KEY REFERENCES entities(id) ON DELETE CASCADE,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tstatus TEXT NOT NULL,\n\t\t\texpires_at TEXT,\n\t\t\tretention_until TEXT,\n\t\t\tcompleted_at TEXT,\n\t\t\tupdated_at TEXT NOT NULL DEFAULT (datetime('now'))\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_task_meta_agent ON task_meta(agent_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_task_meta_status ON task_meta(status);\n\t\tCREATE INDEX IF NOT EXISTS idx_task_meta_retention ON task_meta(retention_until);\n\t`)}function M0(Z,Q,G,B){if(!Z.prepare(`PRAGMA table_info(${Q})`).all().some((_)=>_.name===G))Z.exec(`ALTER TABLE ${Q} ADD COLUMN ${G} ${B}`)}function m8(Z){M0(Z,\"session_memories\",\"entity_slot\",\"INTEGER\"),M0(Z,\"session_memories\",\"aspect_slot\",\"INTEGER\"),M0(Z,\"session_memories\",\"is_constraint\",\"INTEGER NOT NULL DEFAULT 0\"),M0(Z,\"session_memories\",\"structural_density\",\"INTEGER\")}function u8(Z){let Q=Z.prepare(\"PRAGMA table_info(session_checkpoints)\").all(),G=new Set(Q.flatMap((B)=>typeof B.name===\"string\"?[B.name]:[]));if(!G.has(\"focal_entity_ids\"))Z.exec(\"ALTER TABLE session_checkpoints ADD COLUMN focal_entity_ids TEXT\");if(!G.has(\"focal_entity_names\"))Z.exec(\"ALTER TABLE session_checkpoints ADD COLUMN focal_entity_names TEXT\");if(!G.has(\"active_aspect_ids\"))Z.exec(\"ALTER TABLE session_checkpoints ADD COLUMN active_aspect_ids TEXT\");if(!G.has(\"surfaced_constraint_count\"))Z.exec(\"ALTER TABLE session_checkpoints ADD COLUMN surfaced_constraint_count INTEGER\");if(!G.has(\"traversal_memory_count\"))Z.exec(\"ALTER TABLE session_checkpoints ADD COLUMN traversal_memory_count INTEGER\")}function IZ(Z,Q,G,B){if(!Z.prepare(`PRAGMA table_info(${Q})`).all().some((_)=>_.name===G))Z.exec(`ALTER TABLE ${Q} ADD COLUMN ${G} ${B}`)}function p8(Z){IZ(Z,\"entities\",\"pinned\",\"INTEGER NOT NULL DEFAULT 0\"),IZ(Z,\"entities\",\"pinned_at\",\"TEXT\"),Z.exec(\"CREATE INDEX IF NOT EXISTS idx_entities_pinned ON entities(agent_id, pinned, pinned_at DESC)\")}function d8(Z){}function l8(Z){}function MZ(Z,Q,G,B){if(!Z.prepare(`PRAGMA table_info(${Q})`).all().some((_)=>_.name===G))Z.exec(`ALTER TABLE ${Q} ADD COLUMN ${G} ${B}`)}function c8(Z){MZ(Z,\"session_memories\",\"agent_relevance_score\",\"REAL\"),MZ(Z,\"session_memories\",\"agent_feedback_count\",\"INTEGER DEFAULT 0\")}function i8(Z){}function n8(Z){Z.exec(`\n\t\tUPDATE entities\n\t\tSET canonical_name = REPLACE(REPLACE(REPLACE(\n\t\t\tLOWER(TRIM(name)),\n\t\t\t' ', ' '), ' ', ' '), ' ', ' ')\n\t\tWHERE canonical_name IS NULL\n\t`)}function s8(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS memories_cold (\n\t\t\tarchive_id TEXT PRIMARY KEY,\n\t\t\tmemory_id TEXT NOT NULL,\n\t\t\ttype TEXT DEFAULT 'fact',\n\t\t\tcategory TEXT,\n\t\t\tcontent TEXT NOT NULL,\n\t\t\tconfidence REAL DEFAULT 1.0,\n\t\t\timportance REAL DEFAULT 0.5,\n\t\t\tsource_id TEXT,\n\t\t\tsource_type TEXT,\n\t\t\ttags TEXT,\n\t\t\twho TEXT,\n\t\t\twhy TEXT,\n\t\t\tproject TEXT,\n\t\t\tcontent_hash TEXT,\n\t\t\tnormalized_content TEXT,\n\t\t\textraction_status TEXT,\n\t\t\tembedding_model TEXT,\n\t\t\textraction_model TEXT,\n\t\t\tupdate_count INTEGER DEFAULT 0,\n\t\t\toriginal_created_at TEXT NOT NULL,\n\t\t\tarchived_at TEXT NOT NULL,\n\t\t\tarchived_reason TEXT,\n\t\t\tcold_source_id TEXT,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\toriginal_row_json TEXT\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_cold_memory_id ON memories_cold(memory_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_cold_agent ON memories_cold(agent_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_cold_project ON memories_cold(project);\n\t\tCREATE INDEX IF NOT EXISTS idx_cold_archived_at ON memories_cold(archived_at);\n\t\tCREATE INDEX IF NOT EXISTS idx_cold_source ON memories_cold(cold_source_id);\n\t`)}function a8(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS session_summaries (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tproject TEXT,\n\t\t\tdepth INTEGER NOT NULL DEFAULT 0,\n\t\t\tkind TEXT NOT NULL CHECK(kind IN ('session', 'arc', 'epoch')),\n\t\t\tcontent TEXT NOT NULL,\n\t\t\ttoken_count INTEGER,\n\t\t\tearliest_at TEXT NOT NULL,\n\t\t\tlatest_at TEXT NOT NULL,\n\t\t\tsession_key TEXT,\n\t\t\tharness TEXT,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tcreated_at TEXT NOT NULL\n\t\t);\n\n\t\tCREATE TABLE IF NOT EXISTS session_summary_children (\n\t\t\tparent_id TEXT NOT NULL REFERENCES session_summaries(id) ON DELETE CASCADE,\n\t\t\tchild_id TEXT NOT NULL REFERENCES session_summaries(id) ON DELETE CASCADE,\n\t\t\tordinal INTEGER NOT NULL,\n\t\t\tPRIMARY KEY (parent_id, child_id)\n\t\t);\n\n\t\t-- No FK on memory_id: memories may be soft-deleted, purged, or\n\t\t-- archived to cold tier. The link is intentionally durable so\n\t\t-- summary lineage survives retention sweeps.\n\t\tCREATE TABLE IF NOT EXISTS session_summary_memories (\n\t\t\tsummary_id TEXT NOT NULL REFERENCES session_summaries(id) ON DELETE CASCADE,\n\t\t\tmemory_id TEXT NOT NULL,\n\t\t\tPRIMARY KEY (summary_id, memory_id)\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_summaries_project_depth ON session_summaries(project, depth);\n\t\tCREATE INDEX IF NOT EXISTS idx_summaries_kind ON session_summaries(kind);\n\t\tCREATE INDEX IF NOT EXISTS idx_summaries_agent ON session_summaries(agent_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_summaries_latest ON session_summaries(latest_at DESC);\n\t\tCREATE INDEX IF NOT EXISTS idx_summary_children_child ON session_summary_children(child_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_summaries_session_key ON session_summaries(session_key);\n\t\t-- Unique constraint prevents duplicate depth-0 rows on retry\n\t\tCREATE UNIQUE INDEX IF NOT EXISTS idx_summaries_session_depth\n\t\t\tON session_summaries(session_key, depth)\n\t\t\tWHERE session_key IS NOT NULL;\n\t`)}function r8(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS memory_jobs_new (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tmemory_id TEXT,\n\t\t\tjob_type TEXT NOT NULL,\n\t\t\tstatus TEXT NOT NULL DEFAULT 'pending',\n\t\t\tpayload TEXT,\n\t\t\tresult TEXT,\n\t\t\tattempts INTEGER DEFAULT 0,\n\t\t\tmax_attempts INTEGER DEFAULT 3,\n\t\t\tleased_at TEXT,\n\t\t\tcompleted_at TEXT,\n\t\t\tfailed_at TEXT,\n\t\t\terror TEXT,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tupdated_at TEXT NOT NULL,\n\t\t\tdocument_id TEXT,\n\t\t\tFOREIGN KEY (memory_id) REFERENCES memories(id)\n\t\t)\n\t`),Z.exec(`\n\t\tINSERT INTO memory_jobs_new\n\t\t\t(id, memory_id, job_type, status, payload, result,\n\t\t\t attempts, max_attempts, leased_at, completed_at, failed_at,\n\t\t\t error, created_at, updated_at, document_id)\n\t\tSELECT\n\t\t\tid, memory_id, job_type, status, payload, result,\n\t\t\tattempts, max_attempts, leased_at, completed_at, failed_at,\n\t\t\terror, created_at, updated_at, document_id\n\t\tFROM memory_jobs\n\t`),Z.exec(\"DROP TABLE IF EXISTS memory_jobs\"),Z.exec(\"ALTER TABLE memory_jobs_new RENAME TO memory_jobs\"),Z.exec(`\n\t\tCREATE INDEX IF NOT EXISTS idx_memory_jobs_status\n\t\t\tON memory_jobs(status);\n\t\tCREATE INDEX IF NOT EXISTS idx_memory_jobs_memory_id\n\t\t\tON memory_jobs(memory_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_memory_jobs_completed_at\n\t\t\tON memory_jobs(completed_at);\n\t\tCREATE INDEX IF NOT EXISTS idx_memory_jobs_failed_at\n\t\t\tON memory_jobs(failed_at);\n\t`)}function o8(Z){if(!Z.prepare(\"PRAGMA table_info(entity_dependencies)\").all().some((B)=>B.name===\"reason\"))Z.exec(\"ALTER TABLE entity_dependencies ADD COLUMN reason TEXT\");if(!Z.prepare(\"PRAGMA table_info(entities)\").all().some((B)=>B.name===\"last_synthesized_at\"))Z.exec(\"ALTER TABLE entities ADD COLUMN last_synthesized_at TEXT\")}function t8(Z){let Q=Z.prepare(\"PRAGMA table_info(embeddings)\").all();if(Q.length===0)return;if(!Q.some((G)=>G.name===\"vector\"))Z.exec(\"ALTER TABLE embeddings ADD COLUMN vector BLOB\")}function e8(Z){if(!Z.prepare(\"PRAGMA table_info(memories)\").all().some((G)=>G.name===\"scope\"))Z.exec(\"ALTER TABLE memories ADD COLUMN scope TEXT DEFAULT NULL\");Z.exec(\"CREATE INDEX IF NOT EXISTS idx_memories_scope ON memories(scope) WHERE scope IS NOT NULL\")}function Z9(Z){Z.exec(\"DROP INDEX IF EXISTS idx_memories_content_hash_unique\"),Z.exec(`\n\t\tCREATE UNIQUE INDEX idx_memories_content_hash_unique\n\t\tON memories(content_hash, COALESCE(scope, '__NULL__'))\n\t\tWHERE content_hash IS NOT NULL AND is_deleted = 0\n\t`)}function X9(Z){Z.exec(`\n\t\tCREATE VIRTUAL TABLE IF NOT EXISTS entities_fts USING fts5(\n\t\t\tname, canonical_name,\n\t\t\tcontent='entities', content_rowid='rowid'\n\t\t)\n\t`),Z.exec(`\n\t\tINSERT INTO entities_fts(rowid, name, canonical_name)\n\t\tSELECT rowid, name, canonical_name FROM entities\n\t`),Z.exec(`\n\t\tCREATE TRIGGER IF NOT EXISTS entities_fts_ai AFTER INSERT ON entities BEGIN\n\t\t\tINSERT INTO entities_fts(rowid, name, canonical_name)\n\t\t\tVALUES (new.rowid, new.name, new.canonical_name);\n\t\tEND\n\t`),Z.exec(`\n\t\tCREATE TRIGGER IF NOT EXISTS entities_fts_ad AFTER DELETE ON entities BEGIN\n\t\t\tINSERT INTO entities_fts(entities_fts, rowid, name, canonical_name)\n\t\t\tVALUES ('delete', old.rowid, old.name, old.canonical_name);\n\t\tEND\n\t`),Z.exec(`\n\t\tCREATE TRIGGER IF NOT EXISTS entities_fts_au AFTER UPDATE ON entities BEGIN\n\t\t\tINSERT INTO entities_fts(entities_fts, rowid, name, canonical_name)\n\t\t\tVALUES ('delete', old.rowid, old.name, old.canonical_name);\n\t\t\tINSERT INTO entities_fts(rowid, name, canonical_name)\n\t\t\tVALUES (new.rowid, new.name, new.canonical_name);\n\t\tEND\n\t`)}function $9(Z){if(!Z.prepare(\"PRAGMA table_info(entity_dependencies)\").all().some((G)=>G.name===\"confidence\"))Z.exec(\"ALTER TABLE entity_dependencies ADD COLUMN confidence REAL DEFAULT 0.7\")}function z9(Z){if(Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS entity_communities (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tagent_id TEXT NOT NULL,\n\t\t\tname TEXT,\n\t\t\tcohesion REAL DEFAULT 0.0,\n\t\t\tmember_count INTEGER DEFAULT 0,\n\t\t\tcreated_at TEXT NOT NULL DEFAULT (datetime('now')),\n\t\t\tupdated_at TEXT NOT NULL DEFAULT (datetime('now'))\n\t\t)\n\t`),Z.exec(\"CREATE INDEX IF NOT EXISTS idx_entity_communities_agent ON entity_communities(agent_id)\"),!Z.prepare(\"PRAGMA table_info(entities)\").all().some((G)=>G.name===\"community_id\"))Z.exec(\"ALTER TABLE entities ADD COLUMN community_id TEXT REFERENCES entity_communities(id)\")}function Q9(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS memory_hints (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tmemory_id TEXT NOT NULL REFERENCES memories(id) ON DELETE CASCADE,\n\t\t\tagent_id TEXT NOT NULL,\n\t\t\thint TEXT NOT NULL,\n\t\t\tcreated_at TEXT NOT NULL DEFAULT (datetime('now')),\n\t\t\tUNIQUE(memory_id, hint)\n\t\t)\n\t`),Z.exec(\"CREATE INDEX IF NOT EXISTS idx_hints_memory ON memory_hints(memory_id)\"),Z.exec(\"CREATE INDEX IF NOT EXISTS idx_hints_agent ON memory_hints(agent_id)\"),Z.exec(`\n\t\tCREATE VIRTUAL TABLE IF NOT EXISTS memory_hints_fts USING fts5(\n\t\t\thint,\n\t\t\tcontent='memory_hints', content_rowid='rowid'\n\t\t)\n\t`),Z.exec(`\n\t\tCREATE TRIGGER IF NOT EXISTS memory_hints_fts_ai AFTER INSERT ON memory_hints BEGIN\n\t\t\tINSERT INTO memory_hints_fts(rowid, hint)\n\t\t\tVALUES (new.rowid, new.hint);\n\t\tEND\n\t`),Z.exec(`\n\t\tCREATE TRIGGER IF NOT EXISTS memory_hints_fts_ad AFTER DELETE ON memory_hints BEGIN\n\t\t\tINSERT INTO memory_hints_fts(memory_hints_fts, rowid, hint)\n\t\t\tVALUES ('delete', old.rowid, old.hint);\n\t\tEND\n\t`),Z.exec(`\n\t\tCREATE TRIGGER IF NOT EXISTS memory_hints_fts_au AFTER UPDATE ON memory_hints BEGIN\n\t\t\tINSERT INTO memory_hints_fts(memory_hints_fts, rowid, hint)\n\t\t\tVALUES ('delete', old.rowid, old.hint);\n\t\t\tINSERT INTO memory_hints_fts(rowid, hint)\n\t\t\tVALUES (new.rowid, new.hint);\n\t\tEND\n\t`)}function J9(Z){Z.exec(`\n\t\tDELETE FROM entity_dependencies\n\t\tWHERE id NOT IN (\n\t\t\tSELECT MIN(id) FROM entity_dependencies\n\t\t\tGROUP BY source_entity_id, target_entity_id,\n\t\t\t dependency_type, agent_id\n\t\t)\n\t`),Z.exec(`\n\t\tCREATE UNIQUE INDEX IF NOT EXISTS\n\t\t\tidx_entity_deps_unique\n\t\tON entity_dependencies(\n\t\t\tsource_entity_id, target_entity_id,\n\t\t\tdependency_type, agent_id\n\t\t)\n\t`)}function G9(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS session_transcripts (\n\t\t\tsession_key TEXT PRIMARY KEY,\n\t\t\tcontent TEXT NOT NULL,\n\t\t\tharness TEXT,\n\t\t\tproject TEXT,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tcreated_at TEXT NOT NULL\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_st_project\n\t\t\tON session_transcripts(project);\n\t\tCREATE INDEX IF NOT EXISTS idx_st_created\n\t\t\tON session_transcripts(created_at);\n\t`)}function W9(Z,Q,G,B){if(!Z.prepare(`PRAGMA table_info(${Q})`).all().some((_)=>_.name===G))Z.exec(`ALTER TABLE ${Q} ADD COLUMN ${G} ${B}`)}function V9(Z){W9(Z,\"session_memories\",\"path_json\",\"TEXT\"),Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS path_feedback_events (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tagent_id TEXT NOT NULL,\n\t\t\tsession_key TEXT NOT NULL,\n\t\t\tmemory_id TEXT NOT NULL,\n\t\t\tpath_hash TEXT NOT NULL,\n\t\t\tpath_json TEXT NOT NULL,\n\t\t\trating REAL NOT NULL,\n\t\t\treward REAL NOT NULL DEFAULT 0,\n\t\t\treward_forward REAL NOT NULL DEFAULT 0,\n\t\t\treward_update REAL NOT NULL DEFAULT 0,\n\t\t\treward_downstream REAL NOT NULL DEFAULT 0,\n\t\t\treward_dead_end REAL NOT NULL DEFAULT 0,\n\t\t\tcreated_at TEXT NOT NULL\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_path_feedback_events_agent_path\n\t\t\tON path_feedback_events(agent_id, path_hash);\n\t\tCREATE INDEX IF NOT EXISTS idx_path_feedback_events_session\n\t\t\tON path_feedback_events(session_key);\n\t\tCREATE INDEX IF NOT EXISTS idx_path_feedback_events_memory\n\t\t\tON path_feedback_events(memory_id);\n\n\t\tCREATE TABLE IF NOT EXISTS path_feedback_stats (\n\t\t\tagent_id TEXT NOT NULL,\n\t\t\tpath_hash TEXT NOT NULL,\n\t\t\tpath_json TEXT NOT NULL,\n\t\t\tq_value REAL NOT NULL DEFAULT 0,\n\t\t\tsample_count INTEGER NOT NULL DEFAULT 0,\n\t\t\tpositive_count INTEGER NOT NULL DEFAULT 0,\n\t\t\tnegative_count INTEGER NOT NULL DEFAULT 0,\n\t\t\tneutral_count INTEGER NOT NULL DEFAULT 0,\n\t\t\tupdated_at TEXT NOT NULL,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tPRIMARY KEY (agent_id, path_hash)\n\t\t);\n\n\t\tCREATE TABLE IF NOT EXISTS entity_retrieval_stats (\n\t\t\tagent_id TEXT NOT NULL,\n\t\t\tentity_id TEXT NOT NULL,\n\t\t\tsession_count INTEGER NOT NULL DEFAULT 0,\n\t\t\tlast_session_key TEXT,\n\t\t\tupdated_at TEXT NOT NULL,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tPRIMARY KEY (agent_id, entity_id)\n\t\t);\n\n\t\tCREATE TABLE IF NOT EXISTS entity_cooccurrence (\n\t\t\tagent_id TEXT NOT NULL,\n\t\t\tsource_entity_id TEXT NOT NULL,\n\t\t\ttarget_entity_id TEXT NOT NULL,\n\t\t\tsession_count INTEGER NOT NULL DEFAULT 0,\n\t\t\tlast_session_key TEXT,\n\t\t\tupdated_at TEXT NOT NULL,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tPRIMARY KEY (agent_id, source_entity_id, target_entity_id)\n\t\t);\n\n\t\tCREATE TABLE IF NOT EXISTS path_feedback_sessions (\n\t\t\tagent_id TEXT NOT NULL,\n\t\t\tsession_key TEXT NOT NULL,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tPRIMARY KEY (agent_id, session_key)\n\t\t);\n\t`)}function o(Z,Q,G,B){if(Z.prepare(`PRAGMA table_info(${Q})`).all().some((_)=>_.name===G))return;Z.exec(`ALTER TABLE ${Q} ADD COLUMN ${G} ${B}`)}function H9(Z){o(Z,\"session_memories\",\"entity_slot\",\"INTEGER\"),o(Z,\"session_memories\",\"aspect_slot\",\"INTEGER\"),o(Z,\"session_memories\",\"is_constraint\",\"INTEGER NOT NULL DEFAULT 0\"),o(Z,\"session_memories\",\"structural_density\",\"INTEGER\"),o(Z,\"session_memories\",\"predictor_rank\",\"INTEGER\"),o(Z,\"session_memories\",\"agent_relevance_score\",\"REAL\"),o(Z,\"session_memories\",\"agent_feedback_count\",\"INTEGER DEFAULT 0\"),o(Z,\"session_memories\",\"path_json\",\"TEXT\");let B=Z.prepare(\"PRAGMA table_info(session_memories)\").all().some((O)=>O.name===\"agent_id\")?\"COALESCE(NULLIF(agent_id, ''), 'default')\":\"'default'\";Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS session_memories_new (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tsession_key TEXT NOT NULL,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tmemory_id TEXT NOT NULL,\n\t\t\tsource TEXT NOT NULL,\n\t\t\teffective_score REAL,\n\t\t\tpredictor_score REAL,\n\t\t\tfinal_score REAL NOT NULL,\n\t\t\trank INTEGER NOT NULL,\n\t\t\twas_injected INTEGER NOT NULL,\n\t\t\trelevance_score REAL,\n\t\t\tfts_hit_count INTEGER NOT NULL DEFAULT 0,\n\t\t\tagent_preference TEXT,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tentity_slot INTEGER,\n\t\t\taspect_slot INTEGER,\n\t\t\tis_constraint INTEGER NOT NULL DEFAULT 0,\n\t\t\tstructural_density INTEGER,\n\t\t\tpredictor_rank INTEGER,\n\t\t\tagent_relevance_score REAL,\n\t\t\tagent_feedback_count INTEGER DEFAULT 0,\n\t\t\tpath_json TEXT,\n\t\t\tUNIQUE(session_key, agent_id, memory_id)\n\t\t);\n\n\t\tINSERT INTO session_memories_new\n\t\t\t(id, session_key, agent_id, memory_id, source,\n\t\t\t effective_score, predictor_score, final_score, rank,\n\t\t\t was_injected, relevance_score, fts_hit_count,\n\t\t\t agent_preference, created_at, entity_slot, aspect_slot,\n\t\t\t is_constraint, structural_density, predictor_rank,\n\t\t\t agent_relevance_score, agent_feedback_count, path_json)\n\t\tSELECT\n\t\t\tid,\n\t\t\tsession_key,\n\t\t\t${B},\n\t\t\tmemory_id,\n\t\t\tsource,\n\t\t\teffective_score,\n\t\t\tpredictor_score,\n\t\t\tfinal_score,\n\t\t\trank,\n\t\t\twas_injected,\n\t\t\trelevance_score,\n\t\t\tfts_hit_count,\n\t\t\tagent_preference,\n\t\t\tcreated_at,\n\t\t\tentity_slot,\n\t\t\taspect_slot,\n\t\t\tCOALESCE(is_constraint, 0),\n\t\t\tstructural_density,\n\t\t\tpredictor_rank,\n\t\t\tagent_relevance_score,\n\t\t\tCOALESCE(agent_feedback_count, 0),\n\t\t\tpath_json\n\t\tFROM session_memories;\n\n\t\tDROP TABLE session_memories;\n\t\tALTER TABLE session_memories_new RENAME TO session_memories;\n\n\t\tCREATE INDEX IF NOT EXISTS idx_session_memories_session\n\t\t\tON session_memories(session_key);\n\t\tCREATE INDEX IF NOT EXISTS idx_session_memories_memory\n\t\t\tON session_memories(memory_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_session_memories_agent_session\n\t\t\tON session_memories(agent_id, session_key);\n\t`)}function DZ(Z,Q,G,B){if(Z.prepare(`PRAGMA table_info(${Q})`).all().some((_)=>_.name===G))return;Z.exec(`ALTER TABLE ${Q} ADD COLUMN ${G} ${B}`)}function U9(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS agents (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tname TEXT,\n\t\t\tread_policy TEXT NOT NULL DEFAULT 'isolated',\n\t\t\tpolicy_group TEXT,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tupdated_at TEXT NOT NULL\n\t\t);\n\t`);let Q=new Date().toISOString();Z.prepare(`INSERT OR IGNORE INTO agents (id, name, read_policy, created_at, updated_at)\n\t\t VALUES ('default', 'default', 'shared', ?, ?)`).run(Q,Q),DZ(Z,\"memories\",\"agent_id\",\"TEXT DEFAULT 'default'\"),DZ(Z,\"memories\",\"visibility\",\"TEXT DEFAULT 'global'\"),Z.exec(`\n\t\tCREATE INDEX IF NOT EXISTS idx_memories_agent_id\n\t\t\tON memories(agent_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_memories_agent_visibility\n\t\t\tON memories(agent_id, visibility);\n\t`)}function s0(Z,Q,G,B){if(Z.prepare(`PRAGMA table_info(${Q})`).all().some((_)=>_.name===G))return;Z.exec(`ALTER TABLE ${Q} ADD COLUMN ${G} ${B}`)}function Y9(Z){s0(Z,\"session_summaries\",\"source_type\",\"TEXT\"),s0(Z,\"session_summaries\",\"source_ref\",\"TEXT\"),s0(Z,\"session_summaries\",\"meta_json\",\"TEXT\"),Z.exec(`\n\t\tUPDATE session_summaries\n\t\tSET source_type = CASE\n\t\t\tWHEN source_type IS NOT NULL THEN source_type\n\t\t\tWHEN kind = 'session' THEN 'summary'\n\t\t\tWHEN kind IN ('arc', 'epoch') THEN 'condensation'\n\t\t\tELSE kind\n\t\tEND\n\t\tWHERE source_type IS NULL;\n\n\t\tCREATE INDEX IF NOT EXISTS idx_summaries_source_type\n\t\t\tON session_summaries(source_type);\n\t\tCREATE INDEX IF NOT EXISTS idx_summaries_source_ref\n\t\t\tON session_summaries(source_ref);\n\t`)}function a0(Z,Q,G,B){if(Z.prepare(`PRAGMA table_info(${Q})`).all().some((_)=>_.name===G))return;Z.exec(`ALTER TABLE ${Q} ADD COLUMN ${G} ${B}`)}function B9(Z){a0(Z,\"session_transcripts\",\"updated_at\",\"TEXT\"),a0(Z,\"summary_jobs\",\"agent_id\",\"TEXT NOT NULL DEFAULT 'default'\"),a0(Z,\"session_scores\",\"agent_id\",\"TEXT NOT NULL DEFAULT 'default'\"),Z.exec(`\n\t\tUPDATE session_transcripts\n\t\tSET updated_at = COALESCE(updated_at, created_at)\n\t\tWHERE updated_at IS NULL;\n\n\t\tUPDATE summary_jobs\n\t\tSET agent_id = COALESCE(agent_id, 'default')\n\t\tWHERE agent_id IS NULL;\n\n\t\tUPDATE session_scores\n\t\tSET agent_id = COALESCE(agent_id, 'default')\n\t\tWHERE agent_id IS NULL;\n\n\t\tCREATE INDEX IF NOT EXISTS idx_st_agent_updated\n\t\t\tON session_transcripts(agent_id, updated_at);\n\t\tCREATE INDEX IF NOT EXISTS idx_summary_jobs_agent\n\t\t\tON summary_jobs(agent_id, created_at);\n\t\tCREATE INDEX IF NOT EXISTS idx_session_scores_agent_session\n\t\t\tON session_scores(agent_id, session_key, created_at);\n\t`),Z.exec(`\n\t\tCREATE VIRTUAL TABLE IF NOT EXISTS session_transcripts_fts USING fts5(\n\t\t\tcontent,\n\t\t\tcontent='session_transcripts',\n\t\t\tcontent_rowid='rowid'\n\t\t)\n\t`),Z.exec(`\n\t\tCREATE TRIGGER IF NOT EXISTS session_transcripts_fts_ai AFTER INSERT ON session_transcripts BEGIN\n\t\t\tINSERT INTO session_transcripts_fts(rowid, content)\n\t\t\tVALUES (new.rowid, new.content);\n\t\tEND\n\t`),Z.exec(`\n\t\tCREATE TRIGGER IF NOT EXISTS session_transcripts_fts_ad AFTER DELETE ON session_transcripts BEGIN\n\t\t\tINSERT INTO session_transcripts_fts(session_transcripts_fts, rowid, content)\n\t\t\tVALUES ('delete', old.rowid, old.content);\n\t\tEND\n\t`),Z.exec(`\n\t\tCREATE TRIGGER IF NOT EXISTS session_transcripts_fts_au AFTER UPDATE ON session_transcripts BEGIN\n\t\t\tINSERT INTO session_transcripts_fts(session_transcripts_fts, rowid, content)\n\t\t\tVALUES ('delete', old.rowid, old.content);\n\t\t\tINSERT INTO session_transcripts_fts(rowid, content)\n\t\t\tVALUES (new.rowid, new.content);\n\t\tEND\n\t`),Z.exec(`\n\t\tINSERT INTO session_transcripts_fts(session_transcripts_fts)\n\t\tVALUES ('rebuild');\n\t`),Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS memory_md_heads (\n\t\t\tagent_id TEXT PRIMARY KEY,\n\t\t\tcontent TEXT NOT NULL DEFAULT '',\n\t\t\tcontent_hash TEXT NOT NULL DEFAULT '',\n\t\t\trevision INTEGER NOT NULL DEFAULT 0,\n\t\t\tupdated_at TEXT NOT NULL,\n\t\t\tlease_token TEXT,\n\t\t\tlease_owner TEXT,\n\t\t\tlease_expires_at TEXT\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_memory_md_heads_lease\n\t\t\tON memory_md_heads(lease_expires_at);\n\t`)}function K9(Z){Z.exec(`\n\t\tDROP INDEX IF EXISTS idx_summaries_session_depth;\n\n\t\tCREATE TEMP TABLE IF NOT EXISTS session_summary_duplicate_map AS\n\t\tWITH ranked AS (\n\t\t\tSELECT\n\t\t\t\tid,\n\t\t\t\tagent_id,\n\t\t\t\tsession_key,\n\t\t\t\tdepth,\n\t\t\t\tROW_NUMBER() OVER (\n\t\t\t\t\tPARTITION BY agent_id, session_key, depth\n\t\t\t\t\tORDER BY latest_at DESC, created_at DESC, id ASC\n\t\t\t\t) AS rn\n\t\t\tFROM session_summaries\n\t\t\tWHERE session_key IS NOT NULL\n\t\t\t AND COALESCE(source_type, 'summary') = 'summary'\n\t\t)\n\t\tSELECT dup.id AS drop_id, keep.id AS keep_id\n\t\tFROM ranked dup\n\t\tJOIN ranked keep\n\t\t ON keep.agent_id = dup.agent_id\n\t\t AND keep.session_key = dup.session_key\n\t\t AND keep.depth = dup.depth\n\t\t AND keep.rn = 1\n\t\tWHERE dup.rn > 1;\n\n\t\tINSERT OR IGNORE INTO session_summary_memories (summary_id, memory_id)\n\t\tSELECT map.keep_id, link.memory_id\n\t\tFROM session_summary_duplicate_map map\n\t\tJOIN session_summary_memories link ON link.summary_id = map.drop_id;\n\n\t\tINSERT OR IGNORE INTO session_summary_children (parent_id, child_id, ordinal)\n\t\tSELECT\n\t\t\tCOALESCE(parent_map.keep_id, rel.parent_id),\n\t\t\tCOALESCE(child_map.keep_id, rel.child_id),\n\t\t\trel.ordinal\n\t\tFROM session_summary_children rel\n\t\tLEFT JOIN session_summary_duplicate_map parent_map ON parent_map.drop_id = rel.parent_id\n\t\tLEFT JOIN session_summary_duplicate_map child_map ON child_map.drop_id = rel.child_id\n\t\tWHERE parent_map.drop_id IS NOT NULL OR child_map.drop_id IS NOT NULL;\n\n\t\tDELETE FROM session_summary_children\n\t\tWHERE parent_id IN (SELECT drop_id FROM session_summary_duplicate_map)\n\t\t OR child_id IN (SELECT drop_id FROM session_summary_duplicate_map);\n\n\t\tDELETE FROM session_summary_memories\n\t\tWHERE summary_id IN (SELECT drop_id FROM session_summary_duplicate_map);\n\n\t\tDELETE FROM session_summaries\n\t\tWHERE id IN (SELECT drop_id FROM session_summary_duplicate_map);\n\n\t\tDROP TABLE session_summary_duplicate_map;\n\n\t\tCREATE UNIQUE INDEX IF NOT EXISTS idx_summaries_session_depth_summary\n\t\t\tON session_summaries(agent_id, session_key, depth)\n\t\t\tWHERE session_key IS NOT NULL\n\t\t\t AND COALESCE(source_type, 'summary') = 'summary';\n\t`)}function _9(Z){Z.exec(`\n\t\tDROP TRIGGER IF EXISTS session_transcripts_fts_ai;\n\t\tDROP TRIGGER IF EXISTS session_transcripts_fts_ad;\n\t\tDROP TRIGGER IF EXISTS session_transcripts_fts_au;\n\t\tDROP TABLE IF EXISTS session_transcripts_fts;\n\n\t\tCREATE TABLE IF NOT EXISTS session_transcripts_next (\n\t\t\tsession_key TEXT NOT NULL,\n\t\t\tcontent TEXT NOT NULL,\n\t\t\tharness TEXT,\n\t\t\tproject TEXT,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tupdated_at TEXT,\n\t\t\tPRIMARY KEY (agent_id, session_key)\n\t\t);\n\n\t\tINSERT INTO session_transcripts_next (\n\t\t\tsession_key,\n\t\t\tcontent,\n\t\t\tharness,\n\t\t\tproject,\n\t\t\tagent_id,\n\t\t\tcreated_at,\n\t\t\tupdated_at\n\t\t)\n\t\tSELECT\n\t\t\tsession_key,\n\t\t\tcontent,\n\t\t\tharness,\n\t\t\tproject,\n\t\t\tagent_id,\n\t\t\tcreated_at,\n\t\t\tupdated_at\n\t\tFROM (\n\t\t\tSELECT\n\t\t\t\tsession_key,\n\t\t\t\tcontent,\n\t\t\t\tharness,\n\t\t\t\tproject,\n\t\t\t\tCOALESCE(agent_id, 'default') AS agent_id,\n\t\t\t\tcreated_at,\n\t\t\t\tCOALESCE(updated_at, created_at) AS updated_at,\n\t\t\t\tROW_NUMBER() OVER (\n\t\t\t\t\tPARTITION BY COALESCE(agent_id, 'default'), session_key\n\t\t\t\t\tORDER BY COALESCE(updated_at, created_at) DESC, LENGTH(content) DESC, created_at DESC, rowid DESC\n\t\t\t\t) AS rn\n\t\t\tFROM session_transcripts\n\t\t) ranked\n\t\tWHERE rn = 1;\n\n\t\tDROP TABLE session_transcripts;\n\t\tALTER TABLE session_transcripts_next RENAME TO session_transcripts;\n\n\t\tCREATE INDEX IF NOT EXISTS idx_st_project\n\t\t\tON session_transcripts(project);\n\t\tCREATE INDEX IF NOT EXISTS idx_st_created\n\t\t\tON session_transcripts(created_at);\n\t\tCREATE INDEX IF NOT EXISTS idx_st_agent_updated\n\t\t\tON session_transcripts(agent_id, updated_at);\n\n\t\tCREATE VIRTUAL TABLE IF NOT EXISTS session_transcripts_fts USING fts5(\n\t\t\tcontent,\n\t\t\tcontent='session_transcripts',\n\t\t\tcontent_rowid='rowid'\n\t\t);\n\n\t\tCREATE TRIGGER IF NOT EXISTS session_transcripts_fts_ai AFTER INSERT ON session_transcripts BEGIN\n\t\t\tINSERT INTO session_transcripts_fts(rowid, content)\n\t\t\tVALUES (new.rowid, new.content);\n\t\tEND;\n\n\t\tCREATE TRIGGER IF NOT EXISTS session_transcripts_fts_ad AFTER DELETE ON session_transcripts BEGIN\n\t\t\tINSERT INTO session_transcripts_fts(session_transcripts_fts, rowid, content)\n\t\t\tVALUES ('delete', old.rowid, old.content);\n\t\tEND;\n\n\t\tCREATE TRIGGER IF NOT EXISTS session_transcripts_fts_au AFTER UPDATE ON session_transcripts BEGIN\n\t\t\tINSERT INTO session_transcripts_fts(session_transcripts_fts, rowid, content)\n\t\t\tVALUES ('delete', old.rowid, old.content);\n\t\t\tINSERT INTO session_transcripts_fts(rowid, content)\n\t\t\tVALUES (new.rowid, new.content);\n\t\tEND;\n\n\t\tINSERT INTO session_transcripts_fts(session_transcripts_fts)\n\t\tVALUES ('rebuild');\n\n\t\tDROP INDEX IF EXISTS idx_summaries_session_depth;\n\t\tDROP INDEX IF EXISTS idx_summaries_session_depth_summary;\n\t\tCREATE INDEX IF NOT EXISTS idx_summaries_agent_session_key\n\t\t\tON session_summaries(agent_id, session_key);\n\t\tCREATE UNIQUE INDEX IF NOT EXISTS idx_summaries_agent_session_depth_summary\n\t\t\tON session_summaries(agent_id, session_key, depth)\n\t\t\tWHERE session_key IS NOT NULL\n\t\t\t AND COALESCE(source_type, 'summary') = 'summary';\n\t`)}function O9(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS memory_thread_heads (\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tthread_key TEXT NOT NULL,\n\t\t\tlabel TEXT NOT NULL,\n\t\t\tproject TEXT,\n\t\t\tsession_key TEXT,\n\t\t\tsource_type TEXT NOT NULL DEFAULT 'summary',\n\t\t\tsource_ref TEXT,\n\t\t\tharness TEXT,\n\t\t\tnode_id TEXT NOT NULL,\n\t\t\tlatest_at TEXT NOT NULL,\n\t\t\tsample TEXT NOT NULL,\n\t\t\tupdated_at TEXT NOT NULL,\n\t\t\tPRIMARY KEY (agent_id, thread_key)\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_thread_heads_agent_latest\n\t\t\tON memory_thread_heads(agent_id, latest_at DESC);\n\t\tCREATE INDEX IF NOT EXISTS idx_thread_heads_agent_project\n\t\t\tON memory_thread_heads(agent_id, project);\n\n\t\tINSERT INTO memory_thread_heads (\n\t\t\tagent_id, thread_key, label, project, session_key, source_type,\n\t\t\tsource_ref, harness, node_id, latest_at, sample, updated_at\n\t\t)\n\t\tSELECT\n\t\t\tss.agent_id,\n\t\t\tCASE\n\t\t\t\tWHEN ss.harness IS NOT NULL AND TRIM(ss.harness) != ''\n\t\t\t\t\t\tAND (ss.project IS NULL OR TRIM(ss.project) = '')\n\t\t\t\t\t\tAND (ss.source_ref IS NULL OR TRIM(ss.source_ref) = '')\n\t\t\t\t\t\tAND (ss.session_key IS NULL OR TRIM(ss.session_key) = '')\n\t\t\t\t\tTHEN 'harness:' || TRIM(ss.harness)\n\t\t\t\tELSE\n\t\t\t\t\tCASE\n\t\t\t\t\t\tWHEN ss.source_ref IS NOT NULL AND TRIM(ss.source_ref) != '' AND ss.project IS NOT NULL AND TRIM(ss.project) != '' THEN\n\t\t\t\t\t\t\t'project:' || TRIM(ss.project) || '|source:' || TRIM(ss.source_ref)\n\t\t\t\t\t\tWHEN ss.source_ref IS NOT NULL AND TRIM(ss.source_ref) != '' THEN 'source:' || TRIM(ss.source_ref)\n\t\t\t\t\t\tWHEN ss.session_key IS NOT NULL AND TRIM(ss.session_key) != '' AND ss.project IS NOT NULL AND TRIM(ss.project) != '' THEN\n\t\t\t\t\t\t\t'project:' || TRIM(ss.project) || '|session:' || TRIM(ss.session_key)\n\t\t\t\t\t\tWHEN ss.project IS NOT NULL AND TRIM(ss.project) != '' THEN 'project:' || TRIM(ss.project)\n\t\t\t\t\t\tWHEN ss.session_key IS NOT NULL AND TRIM(ss.session_key) != '' THEN 'session:' || TRIM(ss.session_key)\n\t\t\t\t\t\tELSE 'thread:unscoped'\n\t\t\t\t\tEND ||\n\t\t\t\t\tCASE\n\t\t\t\t\t\tWHEN ss.harness IS NOT NULL AND TRIM(ss.harness) != '' THEN '|harness:' || TRIM(ss.harness)\n\t\t\t\t\t\tELSE ''\n\t\t\t\t\tEND\n\t\t\tEND AS thread_key,\n\t\t\tCASE\n\t\t\t\tWHEN ss.source_ref IS NOT NULL AND TRIM(ss.source_ref) != '' AND ss.project IS NOT NULL AND TRIM(ss.project) != '' THEN\n\t\t\t\t\t'project:' || TRIM(ss.project) || '#source:' || TRIM(ss.source_ref)\n\t\t\t\tWHEN ss.source_ref IS NOT NULL AND TRIM(ss.source_ref) != '' THEN 'source:' || TRIM(ss.source_ref)\n\t\t\t\tWHEN ss.session_key IS NOT NULL AND TRIM(ss.session_key) != '' AND ss.project IS NOT NULL AND TRIM(ss.project) != '' THEN\n\t\t\t\t\t'project:' || TRIM(ss.project) || '#session:' || TRIM(ss.session_key)\n\t\t\t\tWHEN ss.project IS NOT NULL AND TRIM(ss.project) != '' THEN 'project:' || TRIM(ss.project)\n\t\t\t\tWHEN ss.session_key IS NOT NULL AND TRIM(ss.session_key) != '' THEN 'session:' || TRIM(ss.session_key)\n\t\t\t\tWHEN ss.harness IS NOT NULL AND TRIM(ss.harness) != '' THEN 'harness:' || TRIM(ss.harness)\n\t\t\t\tELSE 'thread:unscoped'\n\t\t\tEND AS label,\n\t\t\tss.project,\n\t\t\tss.session_key,\n\t\t\tCOALESCE(ss.source_type, ss.kind, 'summary') AS source_type,\n\t\t\tss.source_ref,\n\t\t\tss.harness,\n\t\t\tss.id AS node_id,\n\t\t\tss.latest_at,\n\t\t\tSUBSTR(REPLACE(REPLACE(TRIM(ss.content), CHAR(10), ' '), CHAR(13), ' '), 1, 240) AS sample,\n\t\t\tss.latest_at AS updated_at\n\t\tFROM (\n\t\t\tSELECT\n\t\t\t\ts0.*,\n\t\t\t\tROW_NUMBER() OVER (\n\t\t\t\t\tPARTITION BY s0.agent_id,\n\t\t\t\t\tCASE\n\t\t\t\t\t\tWHEN s0.harness IS NOT NULL AND TRIM(s0.harness) != ''\n\t\t\t\t\t\t\t\tAND (s0.project IS NULL OR TRIM(s0.project) = '')\n\t\t\t\t\t\t\t\tAND (s0.source_ref IS NULL OR TRIM(s0.source_ref) = '')\n\t\t\t\t\t\t\t\tAND (s0.session_key IS NULL OR TRIM(s0.session_key) = '')\n\t\t\t\t\t\t\tTHEN 'harness:' || TRIM(s0.harness)\n\t\t\t\t\t\tELSE\n\t\t\t\t\t\t\tCASE\n\t\t\t\t\t\t\t\tWHEN s0.source_ref IS NOT NULL AND TRIM(s0.source_ref) != '' AND s0.project IS NOT NULL AND TRIM(s0.project) != '' THEN\n\t\t\t\t\t\t\t\t\t'project:' || TRIM(s0.project) || '|source:' || TRIM(s0.source_ref)\n\t\t\t\t\t\t\t\tWHEN s0.source_ref IS NOT NULL AND TRIM(s0.source_ref) != '' THEN 'source:' || TRIM(s0.source_ref)\n\t\t\t\t\t\t\t\tWHEN s0.session_key IS NOT NULL AND TRIM(s0.session_key) != '' AND s0.project IS NOT NULL AND TRIM(s0.project) != '' THEN\n\t\t\t\t\t\t\t\t\t'project:' || TRIM(s0.project) || '|session:' || TRIM(s0.session_key)\n\t\t\t\t\t\t\t\tWHEN s0.project IS NOT NULL AND TRIM(s0.project) != '' THEN 'project:' || TRIM(s0.project)\n\t\t\t\t\t\t\t\tWHEN s0.session_key IS NOT NULL AND TRIM(s0.session_key) != '' THEN 'session:' || TRIM(s0.session_key)\n\t\t\t\t\t\t\t\tELSE 'thread:unscoped'\n\t\t\t\t\t\t\tEND ||\n\t\t\t\t\t\t\tCASE\n\t\t\t\t\t\t\t\tWHEN s0.harness IS NOT NULL AND TRIM(s0.harness) != '' THEN '|harness:' || TRIM(s0.harness)\n\t\t\t\t\t\t\t\tELSE ''\n\t\t\t\t\t\t\tEND\n\t\t\t\t\tEND\n\t\t\t\t\tORDER BY s0.latest_at DESC, s0.created_at DESC\n\t\t\t\t) AS rn\n\t\t\tFROM session_summaries s0\n\t\t\tWHERE COALESCE(s0.source_type, s0.kind) != 'chunk'\n\t\t) ss\n\t\tWHERE ss.rn = 1\n\t\tON CONFLICT(agent_id, thread_key) DO UPDATE SET\n\t\t\tlabel = excluded.label,\n\t\t\tproject = excluded.project,\n\t\t\tsession_key = excluded.session_key,\n\t\t\tsource_type = excluded.source_type,\n\t\t\tsource_ref = excluded.source_ref,\n\t\t\tharness = excluded.harness,\n\t\t\tnode_id = excluded.node_id,\n\t\t\tlatest_at = excluded.latest_at,\n\t\t\tsample = excluded.sample,\n\t\t\tupdated_at = excluded.updated_at\n\t\tWHERE excluded.latest_at >= memory_thread_heads.latest_at;\n\t`)}function F9(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS session_extract_cursors (\n\t\t\tsession_key TEXT NOT NULL,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tlast_offset INTEGER NOT NULL DEFAULT 0,\n\t\t\tlast_extract_at TEXT NOT NULL,\n\t\t\tPRIMARY KEY (session_key, agent_id)\n\t\t);\n\t`)}function j9(Z,Q){return Z.prepare(`SELECT name\n\t\t\t FROM sqlite_master\n\t\t\t WHERE type = 'table' AND name = ?\n\t\t\t LIMIT 1`).get(Q)!==void 0}function R9(Z){if(Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS entity_dependency_history (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tdependency_id TEXT NOT NULL,\n\t\t\tsource_entity_id TEXT NOT NULL,\n\t\t\ttarget_entity_id TEXT NOT NULL,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tdependency_type TEXT NOT NULL,\n\t\t\tevent TEXT NOT NULL,\n\t\t\tchanged_by TEXT NOT NULL,\n\t\t\treason TEXT NOT NULL,\n\t\t\tprevious_reason TEXT,\n\t\t\tmetadata TEXT,\n\t\t\tcreated_at TEXT NOT NULL DEFAULT (datetime('now'))\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_entity_dependency_history_dep\n\t\t\tON entity_dependency_history(dependency_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_entity_dependency_history_agent\n\t\t\tON entity_dependency_history(agent_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_entity_dependency_history_created\n\t\t\tON entity_dependency_history(created_at DESC);\n\t`),!j9(Z,\"entity_dependencies\"))return;Z.exec(\"DROP TRIGGER IF EXISTS trg_entity_dependencies_related_to_reason_insert\"),Z.exec(\"DROP TRIGGER IF EXISTS trg_entity_dependencies_related_to_reason_update\"),Z.exec(\"DROP TRIGGER IF EXISTS trg_entity_dependencies_audit_insert\"),Z.exec(\"DROP TRIGGER IF EXISTS trg_entity_dependencies_audit_update\"),Z.exec(\"DROP TRIGGER IF EXISTS trg_entity_dependencies_audit_delete\"),Z.exec(`\n\t\tCREATE TRIGGER trg_entity_dependencies_related_to_reason_insert\n\t\tBEFORE INSERT ON entity_dependencies\n\t\tFOR EACH ROW\n\t\tWHEN NEW.dependency_type = 'related_to'\n\t\t AND (NEW.reason IS NULL OR length(trim(NEW.reason)) = 0)\n\t\tBEGIN\n\t\t\tSELECT RAISE(ABORT, 'related_to dependencies require a non-empty reason');\n\t\tEND;\n\t`),Z.exec(`\n\t\tCREATE TRIGGER trg_entity_dependencies_related_to_reason_update\n\t\tBEFORE UPDATE OF dependency_type, reason ON entity_dependencies\n\t\tFOR EACH ROW\n\t\tWHEN NEW.dependency_type = 'related_to'\n\t\t AND (NEW.reason IS NULL OR length(trim(NEW.reason)) = 0)\n\t\tBEGIN\n\t\t\tSELECT RAISE(ABORT, 'related_to dependencies require a non-empty reason');\n\t\tEND;\n\t`),Z.exec(`\n\t\tCREATE TRIGGER trg_entity_dependencies_audit_insert\n\t\tAFTER INSERT ON entity_dependencies\n\t\tFOR EACH ROW\n\t\tBEGIN\n\t\t\tINSERT INTO entity_dependency_history (\n\t\t\t\tid, dependency_id, source_entity_id, target_entity_id, agent_id,\n\t\t\t\tdependency_type, event, changed_by, reason, previous_reason,\n\t\t\t\tmetadata, created_at\n\t\t\t) VALUES (\n\t\t\t\tlower(hex(randomblob(16))),\n\t\t\t\tNEW.id,\n\t\t\t\tNEW.source_entity_id,\n\t\t\t\tNEW.target_entity_id,\n\t\t\t\tNEW.agent_id,\n\t\t\t\tNEW.dependency_type,\n\t\t\t\t'created',\n\t\t\t\t'db-trigger',\n\t\t\t\tCOALESCE(NEW.reason, 'created without reason'),\n\t\t\t\tNULL,\n\t\t\t\t'{\"source\":\"trg_entity_dependencies_audit_insert\"}',\n\t\t\t\tdatetime('now')\n\t\t\t);\n\t\tEND;\n\t`),Z.exec(`\n\t\tCREATE TRIGGER trg_entity_dependencies_audit_update\n\t\tAFTER UPDATE ON entity_dependencies\n\t\tFOR EACH ROW\n\t\tBEGIN\n\t\t\tINSERT INTO entity_dependency_history (\n\t\t\t\tid, dependency_id, source_entity_id, target_entity_id, agent_id,\n\t\t\t\tdependency_type, event, changed_by, reason, previous_reason,\n\t\t\t\tmetadata, created_at\n\t\t\t) VALUES (\n\t\t\t\tlower(hex(randomblob(16))),\n\t\t\t\tNEW.id,\n\t\t\t\tNEW.source_entity_id,\n\t\t\t\tNEW.target_entity_id,\n\t\t\t\tNEW.agent_id,\n\t\t\t\tNEW.dependency_type,\n\t\t\t\t'updated',\n\t\t\t\t'db-trigger',\n\t\t\t\tCOALESCE(NEW.reason, 'updated without reason'),\n\t\t\t\tOLD.reason,\n\t\t\t\t'{\"source\":\"trg_entity_dependencies_audit_update\"}',\n\t\t\t\tdatetime('now')\n\t\t\t);\n\t\tEND;\n\t`),Z.exec(`\n\t\tCREATE TRIGGER trg_entity_dependencies_audit_delete\n\t\tAFTER DELETE ON entity_dependencies\n\t\tFOR EACH ROW\n\t\tBEGIN\n\t\t\tINSERT INTO entity_dependency_history (\n\t\t\t\tid, dependency_id, source_entity_id, target_entity_id, agent_id,\n\t\t\t\tdependency_type, event, changed_by, reason, previous_reason,\n\t\t\t\tmetadata, created_at\n\t\t\t) VALUES (\n\t\t\t\tlower(hex(randomblob(16))),\n\t\t\t\tOLD.id,\n\t\t\t\tOLD.source_entity_id,\n\t\t\t\tOLD.target_entity_id,\n\t\t\t\tOLD.agent_id,\n\t\t\t\tOLD.dependency_type,\n\t\t\t\t'deleted',\n\t\t\t\t'db-trigger',\n\t\t\t\tCOALESCE(OLD.reason, 'deleted without reason'),\n\t\t\t\tNULL,\n\t\t\t\t'{\"source\":\"trg_entity_dependencies_audit_delete\"}',\n\t\t\t\tdatetime('now')\n\t\t\t);\n\t\tEND;\n\t`),Z.exec(`\n\t\tINSERT INTO entity_dependency_history (\n\t\t\tid, dependency_id, source_entity_id, target_entity_id, agent_id,\n\t\t\tdependency_type, event, changed_by, reason, previous_reason,\n\t\t\tmetadata, created_at\n\t\t)\n\t\tSELECT\n\t\t\tlower(hex(randomblob(16))),\n\t\t\td.id,\n\t\t\td.source_entity_id,\n\t\t\td.target_entity_id,\n\t\t\td.agent_id,\n\t\t\td.dependency_type,\n\t\t\t'backfill',\n\t\t\t'migration-050',\n\t\t\tCASE\n\t\t\t\tWHEN d.reason IS NULL OR length(trim(d.reason)) = 0\n\t\t\t\t\tTHEN 'legacy dependency without recorded reason'\n\t\t\t\tELSE d.reason\n\t\t\tEND,\n\t\t\tNULL,\n\t\t\t'{\"source\":\"migration-050\"}',\n\t\t\tdatetime('now')\n\t\tFROM entity_dependencies d\n\t\tWHERE NOT EXISTS (\n\t\t\tSELECT 1\n\t\t\tFROM entity_dependency_history h\n\t\t\tWHERE h.dependency_id = d.id\n\t\t\t AND h.event = 'backfill'\n\t\t )\n\t`),Z.exec(`\n\t\tUPDATE entity_dependencies\n\t\tSET reason = 'legacy-unattributed related_to edge'\n\t\tWHERE dependency_type = 'related_to'\n\t\t AND (reason IS NULL OR length(trim(reason)) = 0)\n\t`)}function U0(Z,Q,G,B){if(Z.prepare(`PRAGMA table_info(${Q})`).all().some((_)=>_.name===G))return;Z.exec(`ALTER TABLE ${Q} ADD COLUMN ${G} ${B}`)}function q9(Z){U0(Z,\"summary_jobs\",\"session_id\",\"TEXT\"),U0(Z,\"summary_jobs\",\"trigger\",\"TEXT NOT NULL DEFAULT 'session_end'\"),U0(Z,\"summary_jobs\",\"captured_at\",\"TEXT\"),U0(Z,\"summary_jobs\",\"started_at\",\"TEXT\"),U0(Z,\"summary_jobs\",\"ended_at\",\"TEXT\"),Z.exec(`\n\t\tUPDATE summary_jobs\n\t\tSET\n\t\t\tsession_id = COALESCE(session_id, session_key, id),\n\t\t\ttrigger = COALESCE(NULLIF(trigger, ''), 'session_end'),\n\t\t\tcaptured_at = COALESCE(captured_at, completed_at, created_at),\n\t\t\tended_at = COALESCE(ended_at, completed_at)\n\t\tWHERE 1 = 1;\n\n\t\tCREATE INDEX IF NOT EXISTS idx_summary_jobs_agent_trigger\n\t\t\tON summary_jobs(agent_id, trigger, created_at);\n\t\tCREATE INDEX IF NOT EXISTS idx_summary_jobs_agent_session\n\t\t\tON summary_jobs(agent_id, session_key, created_at);\n\t`),Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS memory_artifacts (\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tsource_path TEXT NOT NULL,\n\t\t\tsource_sha256 TEXT NOT NULL,\n\t\t\tsource_kind TEXT NOT NULL,\n\t\t\tsession_id TEXT NOT NULL,\n\t\t\tsession_key TEXT,\n\t\t\tsession_token TEXT NOT NULL,\n\t\t\tproject TEXT,\n\t\t\tharness TEXT,\n\t\t\tcaptured_at TEXT NOT NULL,\n\t\t\tstarted_at TEXT,\n\t\t\tended_at TEXT,\n\t\t\tmanifest_path TEXT,\n\t\t\tsource_node_id TEXT,\n\t\t\tmemory_sentence TEXT,\n\t\t\tmemory_sentence_quality TEXT,\n\t\t\tcontent TEXT NOT NULL DEFAULT '',\n\t\t\tupdated_at TEXT NOT NULL,\n\t\t\tPRIMARY KEY (agent_id, source_path)\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_memory_artifacts_agent_kind\n\t\t\tON memory_artifacts(agent_id, source_kind, captured_at DESC);\n\t\tCREATE INDEX IF NOT EXISTS idx_memory_artifacts_agent_session\n\t\t\tON memory_artifacts(agent_id, session_token, captured_at DESC);\n\t\tCREATE INDEX IF NOT EXISTS idx_memory_artifacts_agent_membership\n\t\t\tON memory_artifacts(agent_id, COALESCE(ended_at, captured_at) DESC);\n\n\t\tCREATE TABLE IF NOT EXISTS memory_artifact_tombstones (\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tsession_token TEXT NOT NULL,\n\t\t\tremoved_at TEXT NOT NULL,\n\t\t\treason TEXT NOT NULL,\n\t\t\tremoved_paths TEXT NOT NULL,\n\t\t\tPRIMARY KEY (agent_id, session_token)\n\t\t);\n\t`),Z.exec(`\n\t\tCREATE VIRTUAL TABLE IF NOT EXISTS memory_artifacts_fts USING fts5(\n\t\t\tcontent,\n\t\t\tsource_path,\n\t\t\tcontent='memory_artifacts',\n\t\t\tcontent_rowid='rowid'\n\t\t)\n\t`),Z.exec(`\n\t\tCREATE TRIGGER IF NOT EXISTS memory_artifacts_fts_ai AFTER INSERT ON memory_artifacts BEGIN\n\t\t\tINSERT INTO memory_artifacts_fts(rowid, content, source_path)\n\t\t\tVALUES (new.rowid, new.content, new.source_path);\n\t\tEND\n\t`),Z.exec(`\n\t\tCREATE TRIGGER IF NOT EXISTS memory_artifacts_fts_ad AFTER DELETE ON memory_artifacts BEGIN\n\t\t\tINSERT INTO memory_artifacts_fts(memory_artifacts_fts, rowid, content, source_path)\n\t\t\tVALUES ('delete', old.rowid, old.content, old.source_path);\n\t\tEND\n\t`),Z.exec(`\n\t\tCREATE TRIGGER IF NOT EXISTS memory_artifacts_fts_au AFTER UPDATE ON memory_artifacts BEGIN\n\t\t\tINSERT INTO memory_artifacts_fts(memory_artifacts_fts, rowid, content, source_path)\n\t\t\tVALUES ('delete', old.rowid, old.content, old.source_path);\n\t\t\tINSERT INTO memory_artifacts_fts(rowid, content, source_path)\n\t\t\tVALUES (new.rowid, new.content, new.source_path);\n\t\tEND\n\t`),Z.exec(`\n\t\tINSERT INTO memory_artifacts_fts(memory_artifacts_fts)\n\t\tVALUES ('rebuild');\n\t`)}function L9(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS mcp_invocations (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tserver_id TEXT NOT NULL,\n\t\t\ttool_name TEXT NOT NULL,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tsource TEXT NOT NULL CHECK(source IN ('cli','agent','mcp','dashboard')),\n\t\t\tlatency_ms INTEGER NOT NULL,\n\t\t\tsuccess INTEGER NOT NULL DEFAULT 1,\n\t\t\terror_text TEXT,\n\t\t\tcreated_at TEXT NOT NULL DEFAULT (datetime('now'))\n\t\t);\n\t\tCREATE INDEX IF NOT EXISTS idx_mcp_inv_server ON mcp_invocations(server_id, created_at);\n\t\tCREATE INDEX IF NOT EXISTS idx_mcp_inv_agent ON mcp_invocations(agent_id, created_at);\n\t`)}function A9(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS skill_invocations (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tskill_name TEXT NOT NULL,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tsource TEXT NOT NULL CHECK(source IN ('agent','scheduler','api')),\n\t\t\tlatency_ms INTEGER NOT NULL,\n\t\t\tsuccess INTEGER NOT NULL DEFAULT 1,\n\t\t\terror_text TEXT,\n\t\t\tcreated_at TEXT NOT NULL DEFAULT (datetime('now'))\n\t\t);\n\t\tCREATE INDEX IF NOT EXISTS idx_skill_inv_name ON skill_invocations(skill_name, created_at);\n\t\tCREATE INDEX IF NOT EXISTS idx_skill_inv_agent ON skill_invocations(agent_id, created_at);\n\t`)}function I9(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS task_scope_hints (\n\t\t\ttask_id TEXT PRIMARY KEY REFERENCES scheduled_tasks(id) ON DELETE CASCADE,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tcreated_at TEXT NOT NULL DEFAULT (datetime('now')),\n\t\t\tupdated_at TEXT NOT NULL DEFAULT (datetime('now'))\n\t\t);\n\n\t\tINSERT INTO task_scope_hints (task_id, agent_id, created_at, updated_at)\n\t\tSELECT st.id,\n\t\t MIN(sm.agent_id),\n\t\t datetime('now'),\n\t\t datetime('now')\n\t\t FROM scheduled_tasks st\n\t\t JOIN entities e\n\t\t ON e.entity_type = 'skill'\n\t\t AND lower(e.name) = lower(st.skill_name)\n\t\t JOIN skill_meta sm\n\t\t ON sm.entity_id = e.id\n\t\t AND sm.agent_id = e.agent_id\n\t\t AND sm.uninstalled_at IS NULL\n\t\t WHERE st.skill_name IS NOT NULL\n\t\t GROUP BY st.id, lower(st.skill_name)\n\t\tHAVING COUNT(DISTINCT sm.agent_id) = 1\n\t\tON CONFLICT(task_id) DO NOTHING;\n\n\t\tCREATE INDEX IF NOT EXISTS idx_task_scope_hints_agent\n\t\t\tON task_scope_hints(agent_id, updated_at);\n\t`)}function M9(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS dreaming_state (\n\t\t\tagent_id TEXT PRIMARY KEY NOT NULL,\n\t\t\ttokens_since_last_pass INTEGER NOT NULL DEFAULT 0,\n\t\t\tconsecutive_failures INTEGER NOT NULL DEFAULT 0,\n\t\t\tlast_pass_at TEXT,\n\t\t\tlast_pass_id TEXT,\n\t\t\tlast_pass_mode TEXT,\n\t\t\tcreated_at TEXT NOT NULL DEFAULT (datetime('now')),\n\t\t\tupdated_at TEXT NOT NULL DEFAULT (datetime('now'))\n\t\t);\n\t`),Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS dreaming_passes (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tagent_id TEXT NOT NULL,\n\t\t\tmode TEXT NOT NULL DEFAULT 'incremental',\n\t\t\tstatus TEXT NOT NULL DEFAULT 'running',\n\t\t\tstarted_at TEXT NOT NULL DEFAULT (datetime('now')),\n\t\t\tcompleted_at TEXT,\n\t\t\ttokens_consumed INTEGER,\n\t\t\tmutations_applied INTEGER,\n\t\t\tmutations_skipped INTEGER,\n\t\t\tmutations_failed INTEGER,\n\t\t\tsummary TEXT,\n\t\t\terror TEXT,\n\t\t\tcreated_at TEXT NOT NULL DEFAULT (datetime('now'))\n\t\t);\n\t`),Z.exec(`\n\t\tCREATE INDEX IF NOT EXISTS idx_dreaming_passes_agent\n\t\tON dreaming_passes (agent_id, created_at DESC);\n\t`)}function D9(Z){let Q=Z.prepare(\"PRAGMA table_info(memories)\").all(),G=new Set(Q.map((B)=>B.name).filter((B)=>typeof B===\"string\"));if(!G.has(\"agent_id\"))Z.exec(\"ALTER TABLE memories ADD COLUMN agent_id TEXT DEFAULT 'default'\");if(!G.has(\"scope\"))Z.exec(\"ALTER TABLE memories ADD COLUMN scope TEXT\")}function N9(Z){D9(Z),Z.exec(\"DROP INDEX IF EXISTS idx_memories_content_hash_unique\"),Z.exec(`\n\t\tCREATE UNIQUE INDEX idx_memories_content_hash_unique\n\t\tON memories(\n\t\t\tcontent_hash,\n\t\t\tCOALESCE(NULLIF(agent_id, ''), 'default'),\n\t\t\tCOALESCE(scope, '__NULL__')\n\t\t)\n\t\tWHERE content_hash IS NOT NULL AND is_deleted = 0\n\t`)}function T9(Z){let Q=O8(Z);if(Q!==null&&!F8(Q))return;_8(Z)}function S9(Z){Z.exec(`CREATE INDEX IF NOT EXISTS idx_entities_order\n\t\t\tON entities(agent_id, pinned DESC, pinned_at DESC, mentions DESC, updated_at DESC, name)`),Z.exec(`CREATE INDEX IF NOT EXISTS idx_entities_extracted_mentions\n\t\t\tON entities(entity_type, mentions)\n\t\t\tWHERE entity_type = 'extracted'`)}function C9(Z){if(!Z.prepare(\"PRAGMA table_info(entity_attributes)\").all().some((G)=>G.name===\"claim_key\"))Z.exec(\"ALTER TABLE entity_attributes ADD COLUMN claim_key TEXT\");Z.exec(`CREATE INDEX IF NOT EXISTS idx_entity_attributes_claim_key\n\t\t\tON entity_attributes(agent_id, aspect_id, claim_key, status)\n\t\t\tWHERE claim_key IS NOT NULL`)}function E9(Z){if(!Z.prepare(\"PRAGMA table_info(entity_attributes)\").all().some((G)=>G.name===\"group_key\"))Z.exec(\"ALTER TABLE entity_attributes ADD COLUMN group_key TEXT\");Z.exec(`CREATE INDEX IF NOT EXISTS idx_entity_attributes_group_key\n\t\t\tON entity_attributes(agent_id, aspect_id, group_key, status)\n\t\t\tWHERE group_key IS NOT NULL`),Z.exec(`CREATE INDEX IF NOT EXISTS idx_entity_attributes_group_claim\n\t\t\tON entity_attributes(agent_id, aspect_id, group_key, claim_key, status)\n\t\t\tWHERE claim_key IS NOT NULL`)}function P9(Z){if(Z.prepare(\"PRAGMA table_info(memory_artifacts)\").all().some((G)=>G.name===\"source_mtime_ms\"))return;Z.exec(\"ALTER TABLE memory_artifacts ADD COLUMN source_mtime_ms REAL\")}function w9(Z){let Q=Z.prepare(\"PRAGMA table_info(memory_artifacts)\").all(),G=new Set(Q.map((B)=>B.name));if(!G.has(\"is_deleted\"))Z.exec(\"ALTER TABLE memory_artifacts ADD COLUMN is_deleted INTEGER NOT NULL DEFAULT 0\");if(!G.has(\"deleted_at\"))Z.exec(\"ALTER TABLE memory_artifacts ADD COLUMN deleted_at TEXT\");Z.exec(`\n\t\tCREATE INDEX IF NOT EXISTS idx_memory_artifacts_agent_deleted\n\t\t\tON memory_artifacts(agent_id, is_deleted, deleted_at)\n\t`)}function y9(Z){Z.exec(\"DROP TRIGGER IF EXISTS memories_au\"),Z.exec(`\n\t\tCREATE TRIGGER IF NOT EXISTS memories_au AFTER UPDATE OF content ON memories BEGIN\n\t\t\tINSERT INTO memories_fts(memories_fts, rowid, content) VALUES('delete', old.rowid, old.content);\n\t\t\tINSERT INTO memories_fts(rowid, content) VALUES (new.rowid, new.content);\n\t\tEND;\n\t`)}function k9(Z,Q,G){return Z.prepare(`PRAGMA table_info(${Q})`).all().some((O)=>O.name===G)}function D0(Z,Q,G,B){if(!k9(Z,Q,G))Z.exec(`ALTER TABLE ${Q} ADD COLUMN ${G} ${B}`)}function x9(Z){for(let Q of[\"entities\",\"entity_communities\",\"entity_attributes\",\"entity_dependencies\"])D0(Z,Q,\"source_id\",\"TEXT\"),D0(Z,Q,\"source_kind\",\"TEXT\"),D0(Z,Q,\"source_path\",\"TEXT\"),D0(Z,Q,\"source_root\",\"TEXT\");Z.exec(\"CREATE INDEX IF NOT EXISTS idx_entities_source ON entities(agent_id, source_id, source_path)\"),Z.exec(\"CREATE INDEX IF NOT EXISTS idx_entity_communities_source ON entity_communities(agent_id, source_id, source_path)\"),Z.exec(\"CREATE INDEX IF NOT EXISTS idx_entity_attributes_source ON entity_attributes(agent_id, source_id, source_path)\"),Z.exec(\"CREATE INDEX IF NOT EXISTS idx_entity_dependencies_source_origin ON entity_dependencies(agent_id, source_id, source_path)\")}function f9(Z,Q){return Z.prepare(\"SELECT name FROM sqlite_master WHERE type='table' AND name = ?\").get(Q)?.name===Q}function g9(Z,Q,G){return Z.prepare(`PRAGMA table_info(${Q})`).all().some((O)=>O.name===G)}function v9(Z){if(!f9(Z,\"embeddings\"))return;if(!g9(Z,\"embeddings\",\"agent_id\"))Z.exec(\"ALTER TABLE embeddings ADD COLUMN agent_id TEXT\");Z.exec(\"CREATE INDEX IF NOT EXISTS idx_embeddings_agent_source ON embeddings(agent_id, source_type, source_id)\")}function b9(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS memory_search_telemetry (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\troute TEXT NOT NULL,\n\t\t\tagent_id TEXT NOT NULL,\n\t\t\tsession_key TEXT,\n\t\t\tproject TEXT,\n\t\t\tquery TEXT NOT NULL,\n\t\t\tkeyword_query TEXT,\n\t\t\tfilters_json TEXT NOT NULL,\n\t\t\tmethod TEXT NOT NULL,\n\t\t\tresult_count INTEGER NOT NULL,\n\t\t\ttop_score REAL,\n\t\t\tno_hits INTEGER NOT NULL DEFAULT 0,\n\t\t\tduration_ms REAL NOT NULL DEFAULT 0,\n\t\t\ttimings_json TEXT NOT NULL,\n\t\t\tresults_json TEXT NOT NULL,\n\t\t\tsources_json TEXT\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_memory_search_telemetry_agent_time\n\t\t\tON memory_search_telemetry(agent_id, created_at DESC);\n\t\tCREATE INDEX IF NOT EXISTS idx_memory_search_telemetry_session\n\t\t\tON memory_search_telemetry(session_key) WHERE session_key IS NOT NULL;\n\t\tCREATE INDEX IF NOT EXISTS idx_memory_search_telemetry_route_time\n\t\t\tON memory_search_telemetry(route, created_at DESC);\n\t\tCREATE INDEX IF NOT EXISTS idx_memory_search_telemetry_no_hits\n\t\t\tON memory_search_telemetry(no_hits, created_at DESC);\n\t`)}function h9(Z,Q,G){return Z.prepare(`PRAGMA table_info(${Q})`).all().some((O)=>O.name===G)}function NZ(Z,Q,G,B){if(!h9(Z,Q,G))Z.exec(`ALTER TABLE ${Q} ADD COLUMN ${G} ${B}`)}function m9(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS ontology_proposals (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\toperation TEXT NOT NULL,\n\t\t\tstatus TEXT NOT NULL DEFAULT 'pending'\n\t\t\t\tCHECK (status IN ('pending', 'applied', 'rejected', 'failed')),\n\t\t\tpayload TEXT NOT NULL,\n\t\t\tconfidence REAL NOT NULL DEFAULT 0.0\n\t\t\t\tCHECK (confidence >= 0.0 AND confidence <= 1.0),\n\t\t\trationale TEXT NOT NULL DEFAULT '',\n\t\t\tevidence TEXT NOT NULL DEFAULT '[]',\n\t\t\trisk TEXT,\n\t\t\tsource_kind TEXT,\n\t\t\tsource_id TEXT,\n\t\t\tsource_path TEXT,\n\t\t\tsource_root TEXT,\n\t\t\tcreated_by TEXT NOT NULL DEFAULT 'ontology-proposal',\n\t\t\tapplied_by TEXT,\n\t\t\trejected_by TEXT,\n\t\t\tresult TEXT,\n\t\t\tcreated_at TEXT NOT NULL DEFAULT (datetime('now')),\n\t\t\tupdated_at TEXT NOT NULL DEFAULT (datetime('now')),\n\t\t\tapplied_at TEXT,\n\t\t\trejected_at TEXT\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_ontology_proposals_agent_status\n\t\t\tON ontology_proposals(agent_id, status, updated_at DESC);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_ontology_proposals_agent_operation\n\t\t\tON ontology_proposals(agent_id, operation, updated_at DESC);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_ontology_proposals_source\n\t\t\tON ontology_proposals(agent_id, source_kind, source_id);\n\t`);for(let Q of[\"entity_attributes\",\"entity_dependencies\"])NZ(Z,Q,\"proposal_id\",\"TEXT\"),NZ(Z,Q,\"proposal_evidence\",\"TEXT NOT NULL DEFAULT '[]'\"),Z.exec(`CREATE INDEX IF NOT EXISTS idx_${Q}_proposal ON ${Q}(agent_id, proposal_id)`)}function u9(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS daily_reflections (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tdate TEXT NOT NULL,\n\t\t\tsummary TEXT NOT NULL DEFAULT '',\n\t\t\tpatterns TEXT NOT NULL DEFAULT '[]',\n\t\t\tquestion TEXT,\n\t\t\tanswer TEXT,\n\t\t\tanswer_memory_id TEXT,\n\t\t\tcontent_key TEXT,\n\t\t\tmemory_ids TEXT NOT NULL DEFAULT '[]',\n\t\t\tsummary_ids TEXT NOT NULL DEFAULT '[]',\n\t\t\tmodel TEXT,\n\t\t\tcreated_at TEXT NOT NULL DEFAULT (datetime('now')),\n\t\t\tanswered_at TEXT\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_daily_reflections_agent_date\n\t\t\tON daily_reflections(agent_id, date, created_at DESC);\n\n\t\tCREATE UNIQUE INDEX IF NOT EXISTS idx_daily_reflections_agent_content_key\n\t\t\tON daily_reflections(agent_id, date, content_key)\n\t\t\tWHERE content_key IS NOT NULL;\n\t`)}function p9(Z){let Q=Z.prepare(\"PRAGMA table_info(daily_reflections)\").all();if(!new Set(Q.flatMap((B)=>typeof B.name===\"string\"?[B.name]:[])).has(\"content_key\"))Z.exec(\"ALTER TABLE daily_reflections ADD COLUMN content_key TEXT\");Z.exec(`\n\t\tDROP INDEX IF EXISTS idx_daily_reflections_agent_date;\n\t\tDROP INDEX IF EXISTS idx_daily_reflections_agent_content_key;\n\n\t\tCREATE INDEX IF NOT EXISTS idx_daily_reflections_agent_created\n\t\t\tON daily_reflections(agent_id, created_at DESC);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_daily_reflections_agent_date\n\t\t\tON daily_reflections(agent_id, date, created_at DESC);\n\n\t\tCREATE UNIQUE INDEX IF NOT EXISTS idx_daily_reflections_agent_content_key\n\t\t\tON daily_reflections(agent_id, date, content_key)\n\t\t\tWHERE content_key IS NOT NULL;\n\t`)}function d9(Z,Q,G){return Z.prepare(`PRAGMA table_info(${Q})`).all().some((O)=>O.name===G)}function d(Z,Q,G,B){if(!d9(Z,Q,G))Z.exec(`ALTER TABLE ${Q} ADD COLUMN ${G} ${B}`)}function l9(Z){Z.exec(`\n\t\tUPDATE entity_attributes\n\t\tSET version_root_id = id\n\t\tWHERE version_root_id IS NULL\n\t`)}function c9(Z){for(let Q of[\"entities\",\"entity_aspects\",\"entity_dependencies\"])d(Z,Q,\"status\",\"TEXT NOT NULL DEFAULT 'active'\"),d(Z,Q,\"archived_at\",\"TEXT\"),d(Z,Q,\"archived_by\",\"TEXT\"),d(Z,Q,\"archive_reason\",\"TEXT\");for(let Q of[\"entities\",\"entity_aspects\"])d(Z,Q,\"proposal_id\",\"TEXT\"),d(Z,Q,\"proposal_evidence\",\"TEXT NOT NULL DEFAULT '[]'\");d(Z,\"entity_attributes\",\"version\",\"INTEGER NOT NULL DEFAULT 1\"),d(Z,\"entity_attributes\",\"version_root_id\",\"TEXT\"),d(Z,\"entity_attributes\",\"previous_attribute_id\",\"TEXT\"),d(Z,\"entity_attributes\",\"archived_at\",\"TEXT\"),d(Z,\"entity_attributes\",\"archived_by\",\"TEXT\"),d(Z,\"entity_attributes\",\"archive_reason\",\"TEXT\"),l9(Z),Z.exec(`\n\t\tCREATE INDEX IF NOT EXISTS idx_entities_status\n\t\t\tON entities(agent_id, status, updated_at DESC);\n\t\tCREATE INDEX IF NOT EXISTS idx_entity_aspects_status\n\t\t\tON entity_aspects(agent_id, entity_id, status);\n\t\tCREATE INDEX IF NOT EXISTS idx_entity_attributes_version_root\n\t\t\tON entity_attributes(agent_id, version_root_id, version DESC);\n\t\tCREATE INDEX IF NOT EXISTS idx_entity_attributes_claim_version\n\t\t\tON entity_attributes(agent_id, aspect_id, group_key, claim_key, version DESC);\n\t\tCREATE INDEX IF NOT EXISTS idx_entity_dependencies_status\n\t\t\tON entity_dependencies(agent_id, status, updated_at DESC);\n\t\tCREATE INDEX IF NOT EXISTS idx_entities_proposal\n\t\t\tON entities(agent_id, proposal_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_entity_aspects_proposal\n\t\t\tON entity_aspects(agent_id, proposal_id);\n\t`)}function i9(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS epistemic_assertions (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tsubject_entity_id TEXT NOT NULL REFERENCES entities(id) ON DELETE CASCADE,\n\t\t\tclaim_attribute_id TEXT REFERENCES entity_attributes(id) ON DELETE SET NULL,\n\t\t\tpredicate TEXT NOT NULL CHECK (\n\t\t\t\tpredicate IN ('claims', 'believes', 'observed', 'decided', 'prefers', 'denies', 'questions')\n\t\t\t),\n\t\t\tcontent TEXT NOT NULL,\n\t\t\tnormalized_content TEXT NOT NULL,\n\t\t\tspeaker TEXT,\n\t\t\tasserted_at TEXT NOT NULL,\n\t\t\tconfidence REAL NOT NULL DEFAULT 0.0 CHECK (confidence >= 0.0 AND confidence <= 1.0),\n\t\t\tevidence TEXT NOT NULL DEFAULT '[]',\n\t\t\tsource_kind TEXT,\n\t\t\tsource_id TEXT,\n\t\t\tsource_path TEXT,\n\t\t\tsource_root TEXT,\n\t\t\tstatus TEXT NOT NULL DEFAULT 'active' CHECK (status IN ('active', 'archived', 'superseded')),\n\t\t\tsupersedes_assertion_id TEXT REFERENCES epistemic_assertions(id) ON DELETE SET NULL,\n\t\t\tarchived_at TEXT,\n\t\t\tarchived_by TEXT,\n\t\t\tarchive_reason TEXT,\n\t\t\tcreated_by TEXT NOT NULL DEFAULT 'operator',\n\t\t\tcreated_at TEXT NOT NULL DEFAULT (datetime('now')),\n\t\t\tupdated_at TEXT NOT NULL DEFAULT (datetime('now'))\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_epistemic_assertions_agent_entity\n\t\t\tON epistemic_assertions(agent_id, subject_entity_id, status, asserted_at DESC);\n\t\tCREATE INDEX IF NOT EXISTS idx_epistemic_assertions_agent_speaker\n\t\t\tON epistemic_assertions(agent_id, speaker, asserted_at DESC);\n\t\tCREATE INDEX IF NOT EXISTS idx_epistemic_assertions_agent_predicate\n\t\t\tON epistemic_assertions(agent_id, predicate, status, asserted_at DESC);\n\t\tCREATE INDEX IF NOT EXISTS idx_epistemic_assertions_agent_source\n\t\t\tON epistemic_assertions(agent_id, source_kind, source_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_epistemic_assertions_claim\n\t\t\tON epistemic_assertions(agent_id, claim_attribute_id);\n\t`)}function n9(Z){let Q=Z.prepare(\"PRAGMA table_info(memories)\").all(),G=new Set(Q.map((B)=>B.name).filter((B)=>typeof B===\"string\"));if(!G.has(\"agent_id\"))Z.exec(\"ALTER TABLE memories ADD COLUMN agent_id TEXT DEFAULT 'default'\");if(!G.has(\"visibility\"))Z.exec(\"ALTER TABLE memories ADD COLUMN visibility TEXT DEFAULT 'global'\");if(!G.has(\"scope\"))Z.exec(\"ALTER TABLE memories ADD COLUMN scope TEXT\");if(!G.has(\"idempotency_key\"))Z.exec(\"ALTER TABLE memories ADD COLUMN idempotency_key TEXT\");if(!G.has(\"runtime_path\"))Z.exec(\"ALTER TABLE memories ADD COLUMN runtime_path TEXT\")}function s9(Z){n9(Z),Z.exec(\"DROP INDEX IF EXISTS idx_memories_idempotency_key\"),Z.exec(`\n\t\tCREATE UNIQUE INDEX idx_memories_idempotency_key\n\t\tON memories(\n\t\t\tidempotency_key,\n\t\t\tCOALESCE(NULLIF(agent_id, ''), 'default'),\n\t\t\tCOALESCE(visibility, 'global'),\n\t\t\tCOALESCE(scope, '__NULL__')\n\t\t)\n\t\tWHERE idempotency_key IS NOT NULL AND is_deleted = 0\n\t`)}function a9(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS session_context_epochs (\n\t\t\tsession_key TEXT NOT NULL,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tcontext_epoch INTEGER NOT NULL DEFAULT 0,\n\t\t\treason TEXT NOT NULL,\n\t\t\tsource_ref TEXT,\n\t\t\tcreated_at TEXT NOT NULL DEFAULT (datetime('now')),\n\t\t\tPRIMARY KEY (session_key, agent_id, context_epoch)\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_session_context_epochs_created\n\t\t\tON session_context_epochs(agent_id, created_at DESC);\n\n\t\tCREATE TABLE IF NOT EXISTS session_recall_events (\n\t\t\tsession_key TEXT NOT NULL,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tcontext_epoch INTEGER NOT NULL DEFAULT 0,\n\t\t\titem_kind TEXT NOT NULL,\n\t\t\titem_id TEXT NOT NULL,\n\t\t\tsurface TEXT NOT NULL,\n\t\t\tmode TEXT NOT NULL,\n\t\t\tscore REAL,\n\t\t\tsource TEXT,\n\t\t\tcreated_at TEXT NOT NULL DEFAULT (datetime('now')),\n\t\t\tPRIMARY KEY (session_key, agent_id, context_epoch, item_kind, item_id)\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_session_recall_events_session\n\t\t\tON session_recall_events(session_key, agent_id, context_epoch, created_at DESC);\n\t\tCREATE INDEX IF NOT EXISTS idx_session_recall_events_item\n\t\t\tON session_recall_events(item_kind, item_id, created_at DESC);\n\t`)}function r9(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS aggregate_memory_sources (\n\t\t\taggregate_memory_id TEXT NOT NULL,\n\t\t\tsource_memory_id TEXT NOT NULL,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tPRIMARY KEY (aggregate_memory_id, source_memory_id)\n\t\t);\n\t\tCREATE INDEX IF NOT EXISTS idx_aggregate_memory_sources_agent\n\t\t\tON aggregate_memory_sources(agent_id, aggregate_memory_id);\n\t`)}function Y0(Z,Q,G,B){if(Z.prepare(`PRAGMA table_info(${Q})`).all().some((_)=>_.name===G))return;Z.exec(`ALTER TABLE ${Q} ADD COLUMN ${G} ${B}`)}function o9(Z){Y0(Z,\"memory_artifacts\",\"source_id\",\"TEXT\"),Y0(Z,\"memory_artifacts\",\"source_root\",\"TEXT\"),Y0(Z,\"memory_artifacts\",\"source_external_id\",\"TEXT\"),Y0(Z,\"memory_artifacts\",\"source_parent_path\",\"TEXT\"),Y0(Z,\"memory_artifacts\",\"source_meta_json\",\"TEXT\"),Z.exec(`\n\t\tCREATE INDEX IF NOT EXISTS idx_memory_artifacts_agent_source\n\t\t\tON memory_artifacts(agent_id, source_id, source_external_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_memory_artifacts_agent_source_root\n\t\t\tON memory_artifacts(agent_id, source_id, source_root);\n\t`)}function t9(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS temporal_edges (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tsubject_type TEXT NOT NULL,\n\t\t\tsubject_id TEXT NOT NULL,\n\t\t\tfacet TEXT NOT NULL CHECK(facet IN ('captured', 'session', 'source', 'observed', 'occurred', 'valid')),\n\t\t\tstart_at TEXT NOT NULL,\n\t\t\tend_at TEXT,\n\t\t\tconfidence REAL NOT NULL DEFAULT 1.0,\n\t\t\tprovenance_json TEXT,\n\t\t\tmetadata_json TEXT,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tupdated_at TEXT NOT NULL\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_temporal_edges_agent_facet_range\n\t\t\tON temporal_edges(agent_id, facet, start_at, end_at);\n\t\tCREATE INDEX IF NOT EXISTS idx_temporal_edges_agent_subject\n\t\t\tON temporal_edges(agent_id, subject_type, subject_id);\n\t`)}function e9(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS entity_aliases (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tentity_id TEXT NOT NULL REFERENCES entities(id) ON DELETE CASCADE,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\talias TEXT NOT NULL,\n\t\t\tcanonical_alias TEXT NOT NULL,\n\t\t\tconfidence REAL NOT NULL DEFAULT 1.0,\n\t\t\tsource TEXT,\n\t\t\tstatus TEXT NOT NULL DEFAULT 'active',\n\t\t\tcreated_at TEXT NOT NULL DEFAULT (datetime('now')),\n\t\t\tupdated_at TEXT NOT NULL DEFAULT (datetime('now'))\n\t\t);\n\n\t\tCREATE UNIQUE INDEX IF NOT EXISTS idx_entity_aliases_active_unique\n\t\t\tON entity_aliases(agent_id, canonical_alias)\n\t\t\tWHERE status = 'active';\n\t\tCREATE INDEX IF NOT EXISTS idx_entity_aliases_entity\n\t\t\tON entity_aliases(agent_id, entity_id, status);\n\t\tCREATE INDEX IF NOT EXISTS idx_entity_aliases_lookup\n\t\t\tON entity_aliases(agent_id, canonical_alias, status);\n\t`)}function Z5(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS api_keys (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tprefix TEXT NOT NULL UNIQUE,\n\t\t\tname TEXT NOT NULL,\n\t\t\tkey_hash TEXT NOT NULL,\n\t\t\trole TEXT NOT NULL DEFAULT 'agent',\n\t\t\tscope_json TEXT NOT NULL DEFAULT '{}',\n\t\t\tpermissions_json TEXT NOT NULL DEFAULT '[]',\n\t\t\tconnector TEXT,\n\t\t\tharness TEXT,\n\t\t\tagent_id TEXT,\n\t\t\tallowed_projects_json TEXT,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tlast_used_at TEXT,\n\t\t\trevoked_at TEXT,\n\t\t\texpires_at TEXT\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_api_keys_prefix\n\t\t\tON api_keys(prefix);\n\t\tCREATE INDEX IF NOT EXISTS idx_api_keys_active\n\t\t\tON api_keys(revoked_at, expires_at);\n\t\tCREATE INDEX IF NOT EXISTS idx_api_keys_connector\n\t\t\tON api_keys(connector, harness);\n\t`)}function z6(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS transcript_capture_jobs (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tharness TEXT NOT NULL,\n\t\t\tsession_key TEXT,\n\t\t\tsession_id TEXT NOT NULL,\n\t\t\tproject TEXT,\n\t\t\ttranscript TEXT NOT NULL,\n\t\t\traw_transcript TEXT,\n\t\t\ttranscript_path TEXT,\n\t\t\tcaptured_at TEXT NOT NULL,\n\t\t\tended_at TEXT,\n\t\t\tsummary_status TEXT NOT NULL DEFAULT 'not_requested',\n\t\t\tstatus TEXT NOT NULL DEFAULT 'pending',\n\t\t\tattempts INTEGER NOT NULL DEFAULT 0,\n\t\t\tmax_attempts INTEGER NOT NULL DEFAULT 5,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tupdated_at TEXT NOT NULL,\n\t\t\tcompleted_at TEXT,\n\t\t\terror TEXT\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_transcript_capture_jobs_status\n\t\t\tON transcript_capture_jobs(status, created_at);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_transcript_capture_jobs_agent_session\n\t\t\tON transcript_capture_jobs(agent_id, session_key, created_at);\n\t`)}function i(Z,Q,G){return Z.prepare(`PRAGMA table_info(${Q})`).all().some((O)=>O.name===G)}function Q6(Z){if(!i(Z,\"documents\",\"agent_id\"))Z.exec(\"ALTER TABLE documents ADD COLUMN agent_id TEXT NOT NULL DEFAULT 'default'\");if(!i(Z,\"documents\",\"project\"))Z.exec(\"ALTER TABLE documents ADD COLUMN project TEXT\");if(Z.exec(`\n\t\tUPDATE documents\n\t\tSET agent_id = NULLIF(TRIM(json_extract(metadata_json, '$.signet.agentId')), '')\n\t\tWHERE metadata_json IS NOT NULL\n\t\t AND json_valid(metadata_json)\n\t\t AND json_type(metadata_json, '$.signet.agentId') = 'text'\n\t\t AND NULLIF(TRIM(json_extract(metadata_json, '$.signet.agentId')), '') IS NOT NULL\n\t`),Z.exec(`\n\t\tUPDATE documents\n\t\tSET project = NULLIF(TRIM(json_extract(metadata_json, '$.signet.project')), '')\n\t\tWHERE metadata_json IS NOT NULL\n\t\t AND json_valid(metadata_json)\n\t\t AND json_type(metadata_json, '$.signet.project') = 'text'\n\t`),Z.exec(`\n\t\tWITH linked_scope AS (\n\t\t\tSELECT\n\t\t\t\tdm.document_id,\n\t\t\t\tm.agent_id,\n\t\t\t\tm.project,\n\t\t\t\tROW_NUMBER() OVER (\n\t\t\t\t\tPARTITION BY dm.document_id\n\t\t\t\t\tORDER BY COUNT(*) DESC, m.agent_id, COALESCE(m.project, '')\n\t\t\t\t) AS rank\n\t\t\tFROM document_memories dm\n\t\t\tJOIN memories m ON m.id = dm.memory_id\n\t\t\tWHERE m.agent_id IS NOT NULL\n\t\t\t AND NULLIF(TRIM(m.agent_id), '') IS NOT NULL\n\t\t\tGROUP BY dm.document_id, m.agent_id, m.project\n\t\t)\n\t\tUPDATE documents\n\t\tSET\n\t\t\tagent_id = COALESCE((\n\t\t\t\tSELECT agent_id FROM linked_scope\n\t\t\t\tWHERE linked_scope.document_id = documents.id AND rank = 1\n\t\t\t), agent_id),\n\t\t\tproject = (\n\t\t\t\tSELECT project FROM linked_scope\n\t\t\t\tWHERE linked_scope.document_id = documents.id AND rank = 1\n\t\t\t)\n\t\tWHERE EXISTS (\n\t\t\tSELECT 1 FROM linked_scope\n\t\t\tWHERE linked_scope.document_id = documents.id AND rank = 1\n\t\t)\n\t\tAND NOT (\n\t\t\tmetadata_json IS NOT NULL\n\t\t\tAND json_valid(metadata_json)\n\t\t\tAND json_type(metadata_json, '$.signet.agentId') = 'text'\n\t\t\tAND NULLIF(TRIM(json_extract(metadata_json, '$.signet.agentId')), '') IS NOT NULL\n\t\t)\n\t`),i(Z,\"memories\",\"visibility\")&&i(Z,\"memories\",\"type\")&&i(Z,\"memories\",\"source_type\"))Z.exec(`\n\t\t\tUPDATE memories\n\t\t\tSET visibility = 'private'\n\t\t\tWHERE id IN (SELECT memory_id FROM document_memories)\n\t\t\t AND type = 'document_chunk'\n\t\t\t AND source_type = 'document'\n\t\t\t AND (visibility IS NULL OR visibility = 'global')\n\t\t`);if(i(Z,\"memories\",\"content_hash\")&&i(Z,\"memories\",\"agent_id\")&&i(Z,\"memories\",\"project\")&&i(Z,\"memories\",\"scope\")&&i(Z,\"memories\",\"visibility\")&&i(Z,\"memories\",\"is_deleted\"))Z.exec(\"DROP INDEX IF EXISTS idx_memories_content_hash_unique\"),Z.exec(`\n\t\t\tCREATE UNIQUE INDEX idx_memories_content_hash_unique\n\t\t\tON memories(\n\t\t\t\tcontent_hash,\n\t\t\t\tCOALESCE(NULLIF(agent_id, ''), 'default'),\n\t\t\t\tCOALESCE(project, ''),\n\t\t\t\tCOALESCE(scope, '__NULL__'),\n\t\t\t\tCOALESCE(visibility, 'global')\n\t\t\t)\n\t\t\tWHERE content_hash IS NOT NULL AND is_deleted = 0\n\t\t`);Z.exec(\"CREATE INDEX IF NOT EXISTS idx_documents_agent_project ON documents(agent_id, project)\"),Z.exec(\"CREATE INDEX IF NOT EXISTS idx_documents_source_scope ON documents(source_url, agent_id, project)\")}function J6(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS aggregate_evidence_sources (\n\t\t\taggregate_memory_id TEXT NOT NULL,\n\t\t\tsource_kind TEXT NOT NULL,\n\t\t\tsource_id TEXT NOT NULL,\n\t\t\tsource_path TEXT,\n\t\t\tagent_id TEXT NOT NULL DEFAULT 'default',\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tPRIMARY KEY (aggregate_memory_id, source_kind, source_id)\n\t\t);\n\t\tCREATE INDEX IF NOT EXISTS idx_aggregate_evidence_sources_agent\n\t\t\tON aggregate_evidence_sources(agent_id, aggregate_memory_id);\n\t\tCREATE INDEX IF NOT EXISTS idx_aggregate_evidence_sources_source\n\t\t\tON aggregate_evidence_sources(source_kind, source_id);\n\t`)}function X5(Z,Q,G){return Z.prepare(`PRAGMA table_info(${Q})`).all().some((O)=>O.name===G)}var $5=[\"harness\",\"session_id\",\"tool_use_id\",\"cwd\",\"origin\",\"args\"];function z5(Z){for(let Q of $5)if(!X5(Z,\"skill_invocations\",Q))Z.exec(`ALTER TABLE skill_invocations ADD COLUMN ${Q} TEXT`);Z.exec(\"DROP INDEX IF EXISTS idx_skill_inv_dedupe\"),Z.exec(`\n\t\tCREATE UNIQUE INDEX idx_skill_inv_dedupe\n\t\tON skill_invocations(agent_id, harness, session_id, tool_use_id)\n\t\tWHERE harness IS NOT NULL AND session_id IS NOT NULL AND tool_use_id IS NOT NULL\n\t`),Z.exec(\"CREATE INDEX IF NOT EXISTS idx_skill_inv_harness ON skill_invocations(harness, created_at)\")}var Q5=new Set([\"uses\",\"requires\",\"owned_by\",\"owns\",\"blocks\",\"informs\",\"maintains\",\"implements\",\"built\",\"depends_on\",\"related_to\",\"learned_from\",\"teaches\",\"knows\",\"assumes\",\"supports_claim\",\"authored_by\",\"links_to\",\"contains\",\"contains_note\",\"contradicts\",\"supersedes\",\"part_of\",\"produced_artifact\",\"precedes\",\"follows\",\"triggers\",\"may_execute\",\"requires_approval_from\",\"impacts\",\"produces\",\"consumes\"]);function J5(Z){return[...Z].map((Q)=>`'${Q}'`).join(\", \")}function r0(Z,Q){return Boolean(Z.prepare(\"SELECT name FROM sqlite_master WHERE type = 'table' AND name = ?\").get(Q))}function e(Z,Q,G){return Z.prepare(`PRAGMA table_info(${Q})`).all().some((O)=>O.name===G)}function a(Z,Q,G,B){if(!e(Z,Q,G))Z.exec(`ALTER TABLE ${Q} ADD COLUMN ${G} ${B}`)}function G5(Z){let Q=e(Z,\"documents\",\"agent_id\"),G=e(Z,\"documents\",\"project\");if(Q)Z.exec(`\n\t\t\tCREATE TEMP TABLE __signet_doc_agent_guard AS\n\t\t\tSELECT id, agent_id FROM documents\n\t\t\tWHERE NULLIF(TRIM(agent_id), '') IS NOT NULL\n\t\t\t AND NULLIF(TRIM(agent_id), '') <> 'default'\n\t\t`);if(G)Z.exec(`\n\t\t\tCREATE TEMP TABLE __signet_doc_project_guard AS\n\t\t\tSELECT id, project FROM documents\n\t\t\tWHERE NULLIF(TRIM(project), '') IS NOT NULL\n\t\t`);try{if(Q6(Z),Q)Z.exec(`\n\t\t\t\tUPDATE documents\n\t\t\t\tSET agent_id = (SELECT agent_id FROM __signet_doc_agent_guard WHERE __signet_doc_agent_guard.id = documents.id)\n\t\t\t\tWHERE EXISTS (SELECT 1 FROM __signet_doc_agent_guard WHERE __signet_doc_agent_guard.id = documents.id)\n\t\t\t`);if(G)Z.exec(`\n\t\t\t\tUPDATE documents\n\t\t\t\tSET project = (SELECT project FROM __signet_doc_project_guard WHERE __signet_doc_project_guard.id = documents.id)\n\t\t\t\tWHERE EXISTS (SELECT 1 FROM __signet_doc_project_guard WHERE __signet_doc_project_guard.id = documents.id)\n\t\t\t`)}finally{Z.exec(\"DROP TABLE IF EXISTS temp.__signet_doc_agent_guard\"),Z.exec(\"DROP TABLE IF EXISTS temp.__signet_doc_project_guard\")}}function W5(Z){if(z6(Z),r0(Z,\"documents\"))G5(Z);if(J6(Z),a(Z,\"memories\",\"superseded_by\",\"TEXT\"),a(Z,\"memories\",\"superseded_at\",\"TEXT\"),a(Z,\"memories\",\"superseded_reason\",\"TEXT\"),Z.exec(\"CREATE INDEX IF NOT EXISTS idx_memories_superseded_by ON memories(superseded_by)\"),Z.exec(\"CREATE INDEX IF NOT EXISTS idx_memories_active_supersession ON memories(is_deleted, superseded_by)\"),!r0(Z,\"relations\")||!r0(Z,\"entity_dependencies\"))return;a(Z,\"entity_dependencies\",\"confidence\",\"REAL\"),a(Z,\"entity_dependencies\",\"reason\",\"TEXT\"),a(Z,\"entity_dependencies\",\"source_id\",\"TEXT\"),a(Z,\"entity_dependencies\",\"source_kind\",\"TEXT\"),a(Z,\"entity_dependencies\",\"proposal_evidence\",\"TEXT NOT NULL DEFAULT '[]'\"),a(Z,\"entity_dependencies\",\"status\",\"TEXT NOT NULL DEFAULT 'active'\");let Q=e(Z,\"relations\",\"confidence\")?\"r.confidence\":\"NULL\",G=e(Z,\"relations\",\"updated_at\")?\"r.updated_at\":\"r.created_at\",B=e(Z,\"entities\",\"agent_id\")?\"COALESCE(NULLIF(TRIM(src.agent_id), ''), 'default')\":\"'default'\",O=e(Z,\"entities\",\"agent_id\")?\"COALESCE(NULLIF(TRIM(dst.agent_id), ''), 'default')\":\"'default'\";Z.exec(`\n\t\tINSERT OR IGNORE INTO entity_dependencies (\n\t\t\tid,\n\t\t\tsource_entity_id,\n\t\t\ttarget_entity_id,\n\t\t\tagent_id,\n\t\t\tdependency_type,\n\t\t\tstrength,\n\t\t\tconfidence,\n\t\t\treason,\n\t\t\tcreated_at,\n\t\t\tupdated_at,\n\t\t\tsource_id,\n\t\t\tsource_kind,\n\t\t\tproposal_evidence,\n\t\t\tstatus\n\t\t)\n\t\tSELECT\n\t\t\t'relation:' || r.id,\n\t\t\tr.source_entity_id,\n\t\t\tr.target_entity_id,\n\t\t\tCOALESCE(${B}, ${O}, 'default'),\n\t\t\tCASE WHEN r.relation_type IN (${J5(Q5)}) THEN r.relation_type ELSE 'related_to' END,\n\t\t\tMAX(0.1, MIN(1.0, COALESCE(r.strength, 0.5))),\n\t\t\tMAX(0.1, MIN(1.0, COALESCE(${Q}, 0.7))),\n\t\t\t'legacy relation backfill: ' || r.relation_type,\n\t\t\tCOALESCE(r.created_at, datetime('now')),\n\t\t\tCOALESCE(${G}, r.created_at, datetime('now')),\n\t\t\tr.id,\n\t\t\t'relation',\n\t\t\t'[]',\n\t\t\t'active'\n\t\tFROM relations r\n\t\tJOIN entities src ON src.id = r.source_entity_id\n\t\tJOIN entities dst ON dst.id = r.target_entity_id\n\t\tWHERE r.source_entity_id <> r.target_entity_id\n\t\t AND ${B} = ${O}\n\t`)}function V5(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS legacy_markdown_imports (\n\t\t\tpath TEXT PRIMARY KEY,\n\t\t\tmtime_ms INTEGER NOT NULL,\n\t\t\tctime_ms INTEGER NOT NULL,\n\t\t\tsize INTEGER NOT NULL,\n\t\t\tcontent_hash TEXT NOT NULL,\n\t\t\timporter_version INTEGER NOT NULL,\n\t\t\tchunk_count INTEGER NOT NULL DEFAULT 0,\n\t\t\tlast_imported_at TEXT NOT NULL,\n\t\t\tlast_seen_at TEXT NOT NULL,\n\t\t\tstatus TEXT NOT NULL DEFAULT 'imported',\n\t\t\terror TEXT\n\t\t);\n\n\t\tCREATE TABLE IF NOT EXISTS legacy_markdown_chunks (\n\t\t\tfile_path TEXT NOT NULL,\n\t\t\tchunk_hash TEXT NOT NULL,\n\t\t\tchunk_index INTEGER NOT NULL,\n\t\t\tmemory_id TEXT,\n\t\t\tsource_id TEXT,\n\t\t\tcreated_at TEXT NOT NULL,\n\t\t\tPRIMARY KEY (file_path, chunk_hash)\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_legacy_markdown_chunks_memory_id\n\t\t\tON legacy_markdown_chunks(memory_id);\n\t`)}function H5(Z){let Q=Z.prepare(\"SELECT name FROM sqlite_master WHERE type='table' AND name IN ('relations', 'entity_dependencies')\").all(),G=new Set(Q.map((F)=>String(F.name)));if(!G.has(\"relations\")||!G.has(\"entity_dependencies\"))return;let B=Z.prepare(\"PRAGMA table_info(relations)\").all(),O=Z.prepare(\"PRAGMA table_info(entity_dependencies)\").all(),_=new Set(B.map((F)=>String(F.name))),Y=new Set(O.map((F)=>String(F.name)));if(!_.has(\"source_entity_id\")||!_.has(\"relation_type\"))return;if(!Y.has(\"source_entity_id\")||!Y.has(\"dependency_type\")||!Y.has(\"agent_id\"))return;let U=_.has(\"confidence\"),H=_.has(\"updated_at\"),z=Y.has(\"confidence\"),V=Y.has(\"reason\"),X=Y.has(\"status\"),$=[\"id\",\"source_entity_id\",\"target_entity_id\"],J=[\"id\",\"source_entity_id\",\"target_entity_id\"];if($.push(\"relation_type\"),J.push(\"dependency_type\"),$.push(\"strength\",\"created_at\"),J.push(\"strength\",\"created_at\"),$.push(\"'default'\"),J.push(\"agent_id\"),$.push(\"NULL\"),J.push(\"aspect_id\"),U&&z)$.push(\"confidence\"),J.push(\"confidence\");if(V)$.push(\"'extracted'\"),J.push(\"reason\");if(X)$.push(\"'active'\"),J.push(\"status\");if(H&&Y.has(\"updated_at\"))$.push(\"updated_at\"),J.push(\"updated_at\");let W=$.join(\", \"),K=J.join(\", \");Z.exec(`INSERT OR IGNORE INTO entity_dependencies (${K})\n\t\t SELECT ${W}\n\t\t FROM relations\n\t\t WHERE source_entity_id IS NOT NULL\n\t\t AND target_entity_id IS NOT NULL\n\t\t AND relation_type IS NOT NULL`)}function U5(Z,Q,G,B){if(Z.prepare(`PRAGMA table_info(${Q})`).all().some((_)=>_.name===G))return;Z.exec(`ALTER TABLE ${Q} ADD COLUMN ${G} ${B}`)}function Y5(Z){U5(Z,\"summary_jobs\",\"content_hash\",\"TEXT\"),Z.exec(`\n\t\tCREATE INDEX IF NOT EXISTS idx_summary_jobs_agent_session_content_hash\n\t\tON summary_jobs(agent_id, session_key, content_hash)\n\t`)}function B5(Z,Q,G,B){if(Z.prepare(`PRAGMA table_info(${Q})`).all().some((_)=>_.name===G))return;Z.exec(`ALTER TABLE ${Q} ADD COLUMN ${G} ${B}`)}function K5(Z){B5(Z,\"summary_jobs\",\"boundary_reason\",\"TEXT\"),Z.exec(`\n\t\tCREATE INDEX IF NOT EXISTS idx_summary_jobs_boundary_reason\n\t\tON summary_jobs(agent_id, session_key, boundary_reason)\n\t`)}function _5(Z){Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS transcript_recovery_files (\n\t\t\tagent_id TEXT NOT NULL,\n\t\t\tsource_path TEXT NOT NULL,\n\t\t\tharness TEXT NOT NULL,\n\t\t\tsize_bytes INTEGER NOT NULL,\n\t\t\tmtime_ms INTEGER NOT NULL,\n\t\t\tcontent_sha256 TEXT NOT NULL,\n\t\t\tsession_id TEXT NOT NULL,\n\t\t\tlast_scanned_at TEXT NOT NULL,\n\t\t\tPRIMARY KEY (agent_id, source_path)\n\t\t);\n\n\t\tCREATE INDEX IF NOT EXISTS idx_transcript_capture_jobs_agent_session_id\n\t\t\tON transcript_capture_jobs(agent_id, session_id, status);\n\t`)}function O5(Z){if(Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS job_cancellations (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tsource_table TEXT NOT NULL,\n\t\t\tsource_id TEXT NOT NULL,\n\t\t\tstatus_before TEXT NOT NULL,\n\t\t\tpayload_json TEXT NOT NULL,\n\t\t\treason TEXT,\n\t\t\tactor TEXT NOT NULL,\n\t\t\tactor_type TEXT NOT NULL,\n\t\t\trequest_id TEXT,\n\t\t\tcreated_at TEXT NOT NULL\n\t\t)\n\t`),!TZ(Z,\"job_cancellations\",\"idx_job_cancellations_source\"))Z.exec(`CREATE INDEX IF NOT EXISTS idx_job_cancellations_source\n\t\t\t ON job_cancellations(source_table, source_id)`);if(!TZ(Z,\"job_cancellations\",\"idx_job_cancellations_created_at\"))Z.exec(`CREATE INDEX IF NOT EXISTS idx_job_cancellations_created_at\n\t\t\t ON job_cancellations(created_at)`)}function TZ(Z,Q,G){return Z.prepare(`PRAGMA index_list(${Q})`).all().some((O)=>O.name===G)}function F5(Z){if(Z.exec(`\n\t\tCREATE TABLE IF NOT EXISTS job_archive (\n\t\t\tid TEXT PRIMARY KEY,\n\t\t\tsource_table TEXT NOT NULL,\n\t\t\tsource_id TEXT NOT NULL,\n\t\t\tstatus TEXT NOT NULL,\n\t\t\tpayload_json TEXT NOT NULL,\n\t\t\tarchived_at TEXT NOT NULL,\n\t\t\tarchived_by TEXT NOT NULL,\n\t\t\treason TEXT,\n\t\t\tcreated_at TEXT NOT NULL\n\t\t)\n\t`),!SZ(Z,\"job_archive\",\"idx_job_archive_source\"))Z.exec(`CREATE INDEX IF NOT EXISTS idx_job_archive_source\n\t\t\t ON job_archive(source_table, source_id)`);if(!SZ(Z,\"job_archive\",\"idx_job_archive_archived_at\"))Z.exec(`CREATE INDEX IF NOT EXISTS idx_job_archive_archived_at\n\t\t\t ON job_archive(archived_at)`)}function SZ(Z,Q,G){return Z.prepare(`PRAGMA index_list(${Q})`).all().some((O)=>O.name===G)}var CZ=[{version:1,name:\"baseline\",up:j8,artifacts:{tables:[\"memories\",\"conversations\",\"embeddings\"]}},{version:2,name:\"pipeline-v2\",up:q8,artifacts:{tables:[\"memory_history\",\"memory_jobs\",\"entities\",\"relations\",\"memory_entity_mentions\"]}},{version:3,name:\"unique-content-hash\",up:L8},{version:4,name:\"history-actor-and-retention\",up:I8,artifacts:{columns:[{table:\"memory_history\",column:\"actor_type\"}]}},{version:5,name:\"graph-extended\",up:D8,artifacts:{columns:[{table:\"entities\",column:\"canonical_name\"}]}},{version:6,name:\"idempotency-key\",up:N8,artifacts:{columns:[{table:\"memories\",column:\"idempotency_key\"}]}},{version:7,name:\"documents-and-connectors\",up:S8,artifacts:{tables:[\"documents\",\"document_memories\",\"connectors\"]}},{version:8,name:\"embeddings-unique-hash\",up:C8},{version:9,name:\"summary-jobs\",up:E8,artifacts:{tables:[\"summary_jobs\"]}},{version:10,name:\"umap-cache\",up:P8,artifacts:{tables:[\"umap_cache\"]}},{version:11,name:\"session-scores\",up:w8,artifacts:{tables:[\"session_scores\"]}},{version:12,name:\"scheduled-tasks\",up:y8,artifacts:{tables:[\"scheduled_tasks\",\"task_runs\"]}},{version:13,name:\"ingestion-tracking\",up:k8,artifacts:{tables:[\"ingestion_jobs\"],columns:[{table:\"memories\",column:\"source_path\"},{table:\"memories\",column:\"source_section\"}]}},{version:14,name:\"telemetry\",up:x8,artifacts:{tables:[\"telemetry_events\"]}},{version:15,name:\"session-memories\",up:f8,artifacts:{tables:[\"session_memories\"],columns:[{table:\"session_scores\",column:\"confidence\"},{table:\"session_scores\",column:\"continuity_reasoning\"}]}},{version:16,name:\"session-checkpoints\",up:g8,artifacts:{tables:[\"session_checkpoints\"]}},{version:17,name:\"task-skills\",up:v8,artifacts:{columns:[{table:\"scheduled_tasks\",column:\"skill_name\"}]}},{version:18,name:\"skill-meta\",up:b8,artifacts:{tables:[\"skill_meta\"]}},{version:19,name:\"knowledge-structure\",up:h8,artifacts:{tables:[\"entity_aspects\",\"entity_attributes\",\"entity_dependencies\",\"task_meta\"],columns:[{table:\"entities\",column:\"agent_id\"}]}},{version:20,name:\"session-structural-columns\",up:m8,artifacts:{columns:[{table:\"session_memories\",column:\"entity_slot\"},{table:\"session_memories\",column:\"aspect_slot\"},{table:\"session_memories\",column:\"is_constraint\"},{table:\"session_memories\",column:\"structural_density\"}]}},{version:21,name:\"checkpoint-structural\",up:u8,artifacts:{columns:[{table:\"session_checkpoints\",column:\"focal_entity_ids\"}]}},{version:22,name:\"entity-pinning\",up:p8,artifacts:{columns:[{table:\"entities\",column:\"pinned\"},{table:\"entities\",column:\"pinned_at\"}]}},{version:23,name:\"retired-scorer-gap\",up:d8},{version:24,name:\"retired-scorer-gap\",up:l8},{version:25,name:\"agent-feedback\",up:c8,artifacts:{columns:[{table:\"session_memories\",column:\"agent_relevance_score\"}]}},{version:26,name:\"retired-scorer-gap\",up:i8},{version:27,name:\"backfill-canonical-names\",up:n8},{version:28,name:\"lossless-retention\",up:s8},{version:29,name:\"session-summary-dag\",up:a8},{version:30,name:\"nullable-memory-job-memory-id\",up:r8},{version:31,name:\"dependency-reason\",up:o8,artifacts:{columns:[{table:\"entity_dependencies\",column:\"reason\"},{table:\"entities\",column:\"last_synthesized_at\"}]}},{version:32,name:\"embeddings-vector-column\",up:t8,artifacts:{columns:[{table:\"embeddings\",column:\"vector\",optional:!0}]}},{version:33,name:\"scope\",up:e8,artifacts:{columns:[{table:\"memories\",column:\"scope\"}]}},{version:34,name:\"scope-aware-dedup\",up:Z9},{version:35,name:\"entity-fts\",up:X9},{version:36,name:\"dependency-confidence\",up:$9,artifacts:{columns:[{table:\"entity_dependencies\",column:\"confidence\"}]}},{version:37,name:\"entity-communities\",up:z9,artifacts:{tables:[\"entity_communities\"],columns:[{table:\"entities\",column:\"community_id\"}]}},{version:38,name:\"memory-hints\",up:Q9,artifacts:{tables:[\"memory_hints\"]}},{version:39,name:\"dedup-entity-dependencies\",up:J9},{version:40,name:\"session-transcripts\",up:G9,artifacts:{tables:[\"session_transcripts\"]}},{version:41,name:\"path-feedback\",up:V9,artifacts:{tables:[\"path_feedback_events\",\"path_feedback_stats\",\"entity_retrieval_stats\",\"entity_cooccurrence\",\"path_feedback_sessions\"],columns:[{table:\"session_memories\",column:\"path_json\"}]}},{version:42,name:\"session-memories-agent-id\",up:H9,artifacts:{columns:[{table:\"session_memories\",column:\"agent_id\"}]}},{version:43,name:\"agents-table\",up:U9,artifacts:{tables:[\"agents\"],columns:[{table:\"memories\",column:\"agent_id\"},{table:\"memories\",column:\"visibility\"}]}},{version:44,name:\"memory-md-temporal-head\",up:Y9,artifacts:{columns:[{table:\"session_summaries\",column:\"source_type\"},{table:\"session_summaries\",column:\"source_ref\"},{table:\"session_summaries\",column:\"meta_json\"}]}},{version:45,name:\"lossless-working-memory-hardening\",up:B9,artifacts:{tables:[\"session_transcripts_fts\",\"memory_md_heads\"],columns:[{table:\"session_transcripts\",column:\"updated_at\"},{table:\"summary_jobs\",column:\"agent_id\"},{table:\"session_scores\",column:\"agent_id\"}]}},{version:46,name:\"session-summary-uniqueness\",up:K9},{version:47,name:\"agent-scoped-temporal-uniqueness\",up:_9},{version:48,name:\"thread-heads\",up:O9,artifacts:{tables:[\"memory_thread_heads\"]}},{version:49,name:\"session-extract-cursors\",up:F9,artifacts:{tables:[\"session_extract_cursors\"]}},{version:50,name:\"related-to-audit\",up:R9,artifacts:{tables:[\"entity_dependency_history\"]}},{version:51,name:\"memory-md-rolling-window-lineage\",up:q9,artifacts:{tables:[\"memory_artifacts\",\"memory_artifact_tombstones\",\"memory_artifacts_fts\"],columns:[{table:\"summary_jobs\",column:\"session_id\"},{table:\"summary_jobs\",column:\"trigger\"},{table:\"summary_jobs\",column:\"captured_at\"},{table:\"summary_jobs\",column:\"started_at\"},{table:\"summary_jobs\",column:\"ended_at\"}]}},{version:52,name:\"mcp-invocations\",up:L9,artifacts:{tables:[\"mcp_invocations\"]}},{version:53,name:\"skill-invocations\",up:A9,artifacts:{tables:[\"skill_invocations\"]}},{version:54,name:\"task-agent-scope\",up:I9,artifacts:{tables:[\"task_scope_hints\"]}},{version:55,name:\"dreaming-state\",up:M9,artifacts:{tables:[\"dreaming_state\",\"dreaming_passes\"]}},{version:56,name:\"agent-scoped-content-hash\",up:N9},{version:57,name:\"memories-fts-tokenizer-repair\",up:T9},{version:58,name:\"knowledge-graph-indices\",up:S9},{version:59,name:\"entity-attribute-claim-key\",up:C9,artifacts:{columns:[{table:\"entity_attributes\",column:\"claim_key\"}]}},{version:60,name:\"entity-attribute-group-key\",up:E9,artifacts:{columns:[{table:\"entity_attributes\",column:\"group_key\"}]}},{version:61,name:\"memory-artifact-source-mtime\",up:P9,artifacts:{columns:[{table:\"memory_artifacts\",column:\"source_mtime_ms\"}]}},{version:62,name:\"memory-artifact-soft-delete\",up:w9,artifacts:{columns:[{table:\"memory_artifacts\",column:\"is_deleted\"},{table:\"memory_artifacts\",column:\"deleted_at\"}]}},{version:63,name:\"content-only-memories-fts-update\",up:y9},{version:64,name:\"source-graph-provenance\",up:x9,artifacts:{columns:[{table:\"entities\",column:\"source_path\"},{table:\"entity_communities\",column:\"source_path\"},{table:\"entity_attributes\",column:\"source_path\"},{table:\"entity_dependencies\",column:\"source_path\"}]}},{version:65,name:\"source-embedding-agent-scope\",up:v9,artifacts:{columns:[{table:\"embeddings\",column:\"agent_id\",optional:!0}]}},{version:66,name:\"memory-search-telemetry\",up:b9,artifacts:{tables:[\"memory_search_telemetry\"]}},{version:67,name:\"ontology-proposals\",up:m9,artifacts:{tables:[\"ontology_proposals\"],columns:[{table:\"entity_attributes\",column:\"proposal_id\"},{table:\"entity_attributes\",column:\"proposal_evidence\"},{table:\"entity_dependencies\",column:\"proposal_id\"},{table:\"entity_dependencies\",column:\"proposal_evidence\"}]}},{version:68,name:\"daily-reflections\",up:u9,artifacts:{tables:[\"daily_reflections\"]}},{version:69,name:\"daily-reflections-multiple-insights\",up:p9,artifacts:{tables:[\"daily_reflections\"]}},{version:70,name:\"ontology-control-plane-state\",up:c9,artifacts:{columns:[{table:\"entities\",column:\"status\"},{table:\"entity_aspects\",column:\"status\"},{table:\"entity_attributes\",column:\"version\"},{table:\"entity_attributes\",column:\"version_root_id\"},{table:\"entity_attributes\",column:\"previous_attribute_id\"},{table:\"entity_dependencies\",column:\"status\"}]}},{version:71,name:\"epistemic-assertions\",up:i9,artifacts:{tables:[\"epistemic_assertions\"]}},{version:72,name:\"agent-scoped-idempotency-key\",up:s9,artifacts:{columns:[{table:\"memories\",column:\"idempotency_key\"},{table:\"memories\",column:\"runtime_path\"}]}},{version:73,name:\"recall-context-dedupe\",up:a9,artifacts:{tables:[\"session_context_epochs\",\"session_recall_events\"]}},{version:74,name:\"aggregate-memory-links\",up:r9,artifacts:{tables:[\"aggregate_memory_sources\"]}},{version:75,name:\"memory-artifact-source-provenance\",up:o9,artifacts:{columns:[{table:\"memory_artifacts\",column:\"source_id\"},{table:\"memory_artifacts\",column:\"source_root\"},{table:\"memory_artifacts\",column:\"source_external_id\"},{table:\"memory_artifacts\",column:\"source_parent_path\"},{table:\"memory_artifacts\",column:\"source_meta_json\"}]}},{version:76,name:\"temporal-edges\",up:t9,artifacts:{tables:[\"temporal_edges\"]}},{version:77,name:\"entity-aliases\",up:e9,artifacts:{tables:[\"entity_aliases\"]}},{version:78,name:\"api-keys\",up:Z5,artifacts:{tables:[\"api_keys\"]}},{version:79,name:\"transcript-capture-jobs\",up:z6,artifacts:{tables:[\"transcript_capture_jobs\"]}},{version:80,name:\"document-scope-columns\",up:Q6,artifacts:{columns:[{table:\"documents\",column:\"agent_id\"},{table:\"documents\",column:\"project\"}]}},{version:81,name:\"aggregate-evidence-sources\",up:J6,artifacts:{tables:[\"aggregate_evidence_sources\"]}},{version:82,name:\"skill-invocations-harness\",up:z5,artifacts:{columns:[{table:\"skill_invocations\",column:\"harness\"},{table:\"skill_invocations\",column:\"tool_use_id\"}]}},{version:83,name:\"memory-lifecycle-repair\",up:W5,artifacts:{tables:[\"transcript_capture_jobs\",\"aggregate_evidence_sources\",\"entity_dependencies\"],columns:[{table:\"documents\",column:\"agent_id\"},{table:\"documents\",column:\"project\"},{table:\"memories\",column:\"superseded_by\"},{table:\"memories\",column:\"superseded_at\"},{table:\"memories\",column:\"superseded_reason\"}]}},{version:84,name:\"legacy-markdown-import-state\",up:V5,artifacts:{tables:[\"legacy_markdown_imports\",\"legacy_markdown_chunks\"]}},{version:85,name:\"backfill-relations-to-dependencies\",up:H5,artifacts:{tables:[\"entity_dependencies\"]}},{version:86,name:\"summary-jobs-content-hash\",up:Y5,artifacts:{columns:[{table:\"summary_jobs\",column:\"content_hash\"}]}},{version:87,name:\"summary-jobs-boundary-reason\",up:K5,artifacts:{columns:[{table:\"summary_jobs\",column:\"boundary_reason\"}]}},{version:88,name:\"transcript-recovery-files\",up:_5,artifacts:{tables:[\"transcript_recovery_files\"]}},{version:89,name:\"job-cancellations\",up:O5,artifacts:{tables:[\"job_cancellations\"]}},{version:90,name:\"job-archive\",up:F5,artifacts:{tables:[\"job_archive\"]}}];var zX=CZ[CZ.length-1]?.version??0;var j5=B8(import.meta.url),QX=Y8(j5);var JX=wZ(eZ(),1);var R5=wZ(eZ(),1);function G6(Z){try{let Q=R5.default.parse(Z);return typeof Q===\"object\"&&Q!==null?Q:{}}catch{return{}}}var L5=null;try{L5=q5(import.meta.url)(\"@signet/native\")}catch{}var W6=\"signetai\";var A5=[\"skills\",\"tools\",\"dreaming\"],WX=[\".daemon\",\".shadow\",\"node_modules\",\":(glob)**/node_modules/**\",`${W6}`,\"memory/backups\",\"memory/memories.db\",\":(glob)memory/memories.db*\",\":(glob)memory/**/*.db\",\":(glob)memory/**/*.db-*\",\":(glob)memory/**/*.db-journal\",\":(glob)memory/**/*.db-shm\",\":(glob)memory/**/*.db-wal\",\":(glob)memory/**/*.sqlite\",\":(glob)memory/**/*.sqlite3\",\":(glob)**/*.db\",\":(glob)**/*.db-*\",\":(glob)**/*.db-journal\",\":(glob)**/*.db-shm\",\":(glob)**/*.db-wal\",\":(glob)**/*.sqlite\",\":(glob)**/*.sqlite3\"],VX=[\"*.md\",\":(glob)**/*.md\",\"*.json\",\":(glob)**/*.json\",\"*.jsonl\",\":(glob)**/*.jsonl\",\"*.html\",\":(glob)**/*.html\",\"*.yaml\",\":(glob)**/*.yaml\",\"*.yml\",\":(glob)**/*.yml\",...A5];var HX=[\".daemon/\",\".shadow/\",\"node_modules/\",`${W6}/`,\"memory/memories.db*\",\"memory/**/*.db\",\"memory/**/*.db-*\",\"memory/**/*.db-journal\",\"memory/**/*.db-shm\",\"memory/**/*.db-wal\",\"memory/**/*.sqlite\",\"memory/**/*.sqlite3\",\"memory/backups/\",\"*.db\",\"*.db-*\",\"*.db-journal\",\"*.db-shm\",\"*.db-wal\",\"*.sqlite\",\"*.sqlite3\"];var _X=D5(),M5=[\"issues\",\"pulls\",\"discussions\",\"docs\"];var OX=new Set(M5);function D5(){switch(I5()){case\"darwin\":return B0(o0(),\"Library\",\"Application Support\",\"discord\");case\"win32\":return B0(process.env.APPDATA||B0(o0(),\"AppData\",\"Roaming\"),\"discord\");default:return B0(process.env.XDG_CONFIG_HOME||B0(o0(),\".config\"),\"discord\")}}var N5=[\"managed\",\"passthrough\",\"off\"],V6={agents:{path:\"AGENTS.md\",description:\"Operational rules and behavioral settings\",optional:!1},soul:{path:\"SOUL.md\",description:\"Persona, character, and security settings\",optional:!1},identity:{path:\"IDENTITY.md\",description:\"Agent name, creature type, and vibe\",optional:!1},user:{path:\"USER.md\",description:\"User profile and preferences\",optional:!1},heartbeat:{path:\"HEARTBEAT.md\",description:\"Heartbeat prompt used only for heartbeat/background check sessions\",optional:!0,context:\"session\",session:\"heartbeat\"},memory:{path:\"MEMORY.md\",description:\"Memory index and summary\",optional:!0},tools:{path:\"TOOLS.md\",description:\"Tool preferences and notes\",optional:!0},bootstrap:{path:\"BOOTSTRAP.md\",description:\"Setup ritual (typically deleted after first run)\",optional:!0,context:\"session\",session:\"bootstrap\"},dreaming:{path:\"DREAMING.md\",description:\"Dreaming/reflection prompt used only for dreaming sessions\",optional:!0,context:\"session\",session:\"dreaming\"}},T5={minimal:{name:\"minimal\",description:\"AGENTS.md only for normal startup, plus DREAMING.md for dreaming sessions.\",startup:[{path:\"AGENTS.md\",role:\"operating_instructions\",budget:12000}],special:[{path:\"DREAMING.md\",kind:\"dreaming\",role:\"dreaming_prompt\",budget:4000}]},hermes:{name:\"hermes\",description:\"Hermes-style SOUL.md primary identity with project-context discovery handled by Hermes.\",startup:[{path:\"SOUL.md\",role:\"primary_identity\",budget:4000},{path:\"AGENTS.md\",role:\"project_context\",budget:12000}],special:[{path:\"DREAMING.md\",kind:\"dreaming\",role:\"dreaming_prompt\",budget:4000}]},openclaw:{name:\"openclaw\",description:\"OpenClaw-style rich identity stack for character-forward agents.\",startup:[{path:\"AGENTS.md\",role:\"operating_instructions\",budget:12000},{path:\"SOUL.md\",role:\"persona\",budget:4000},{path:\"IDENTITY.md\",role:\"agent_identity\",budget:2000},{path:\"USER.md\",role:\"user_profile\",budget:6000},{path:\"MEMORY.md\",role:\"working_memory\",budget:1e4}],special:[{path:\"HEARTBEAT.md\",kind:\"heartbeat\",role:\"heartbeat_prompt\",budget:4000},{path:\"DREAMING.md\",kind:\"dreaming\",role:\"dreaming_prompt\",budget:4000},{path:\"BOOTSTRAP.md\",kind:\"bootstrap\",role:\"bootstrap_prompt\",budget:4000}]},custom:{name:\"custom\",description:\"User-selected startup files and explicit order.\",startup:[{path:\"AGENTS.md\",role:\"operating_instructions\",budget:12000}],special:[{path:\"DREAMING.md\",kind:\"dreaming\",role:\"dreaming_prompt\",budget:4000}]}},IX=Object.entries(V6).filter(([,Z])=>!Z.optional).map(([Z])=>Z),MX=Object.entries(V6).filter(([,Z])=>Z.optional).map(([Z])=>Z);var t0=[{file:\"AGENTS.md\",header:\"Agent Instructions\",budget:12000},{file:\"SOUL.md\",header:\"Soul\",budget:4000},{file:\"IDENTITY.md\",header:\"Identity\",budget:2000},{file:\"USER.md\",header:\"About Your User\",budget:6000},{file:\"MEMORY.md\",header:\"Working Memory\",budget:1e4}],S5={\"AGENTS.md\":\"Agent Instructions\",\"SOUL.md\":\"Soul\",\"IDENTITY.md\":\"Identity\",\"USER.md\":\"About Your User\",\"MEMORY.md\":\"Working Memory\"};function EZ(Z){let Q=Z.trim();if(!Q)return!1;if(Q.startsWith(\"/\")||Q.startsWith(\"~\"))return!1;return!Q.split(/[\\\\/]/).includes(\"..\")}function Z0(Z){return typeof Z===\"object\"&&Z!==null&&!Array.isArray(Z)?Z:{}}function PZ(Z){return typeof Z===\"string\"&&N5.includes(Z)}function H6(Z){let Q=Z0(Z),G=Z0(Q.capabilities),B=Z0(G.identity);if(PZ(B.mode))return B.mode;let O=Z0(Q.identity);if(PZ(O.mode))return O.mode;if(O.enabled===!1)return\"off\";return\"managed\"}function C5(Z){let Q=VZ(Z,\"agent.yaml\");if(!N0(Q))return\"managed\";try{return H6(G6(WZ(Q,\"utf-8\")))}catch{return\"managed\"}}function U6(Z){return Z!==\"off\"}function E5(Z){if(typeof Z===\"string\")return EZ(Z)?{path:Z}:null;let Q=Z0(Z),G=typeof Q.path===\"string\"?Q.path.trim():\"\";if(!EZ(G))return null;if(Q.enabled===!1)return null;let B=typeof Q.role===\"string\"?Q.role:void 0,O=typeof Q.budget===\"number\"?Q.budget:Number.parseInt(String(Q.budget??\"\"),10),_=Number.isFinite(O)&&O>0?Math.floor(O):void 0;return{path:G,role:B,budget:_}}function P5(Z){if(!Array.isArray(Z))return[];return Z.map(E5).filter((Q)=>Q!==null)}function w5(Z,Q){let G=Z.split(/[\\\\/]/).pop()??Z;return S5[G]??Q??G.replace(/\\.md$/i,\"\")}function y5(Z){let Q=VZ(Z,\"agent.yaml\");if(!N0(Q))return t0.map(({file:G,budget:B})=>({path:G,budget:B}));try{let G=G6(WZ(Q,\"utf-8\"));if(!U6(H6(G)))return[];let B=Z0(G.identity),O=Z0(B.startup),_=P5(O.load);if(_.length>0)return _;let Y=typeof B.preset===\"string\"?B.preset:\"\",U=T5[Y];if(U)return U.startup}catch{}return t0.map(({file:G,budget:B})=>({path:G,budget:B}))}var k5=\"[signet: daemon offline \u2014 running with static identity]\",Y6=\"[signet: daemon session-start timed out \u2014 running with static identity]\";function B6(Z){if(!Z)return 15000;let Q=Number.parseInt(Z,10);if(!Number.isFinite(Q)||Q<1000)return 15000;if(Q>120000)return 120000;return Q}function v0(Z,Q=k5){if(!N0(Z))return null;if(!U6(C5(Z)))return null;let G=[];for(let B of y5(Z)){let O=VZ(Z,B.path);if(!N0(O))continue;try{let _=WZ(O,\"utf-8\").trim();if(!_)continue;let Y=B.budget??t0.find((H)=>H.file===B.path)?.budget??4000,U=_.length<=Y?_:`${_.slice(0,Y)}\n[truncated]`;G.push(`## ${w5(B.path,B.role)}\n\n${U}`)}catch{}}if(G.length===0)return null;return`${Q}\n\n${G.join(`\n\n`)}`}var NX=x5();function f5(Z){let Q=Z.sessionManager.getBranch();if(Array.isArray(Q)&&Q.length>0)return Q;let G=Z.sessionManager.getEntries();return Array.isArray(G)?G:[]}function n(Z){let Q=Z.sessionManager.getHeader(),G=w(Z.sessionManager.getSessionId())??w(Q?.id),B=w(Z.sessionManager.getSessionFile()),O=w(Z.cwd)??w(Q?.cwd)??w(Q?.project)??w(Q?.workspace);return{sessionId:G,sessionFile:B,project:O}}async function j0(Z,Q){return await Z.client.post(\"/api/hooks/session-end\",{harness:Z.config.harness,runtimePath:Z.config.runtimePath,reason:Q.reason,sessionKey:Q.sessionId,sessionId:Q.sessionId,agentId:Q.agentId,cwd:Q.project,...Q.transcript?{transcript:Q.transcript}:{}},Z.config.writeTimeout)!==null}async function W0(Z){for(let Q of Z.state.getPendingSessionEnds()){if(Z.state.sessionAlreadyEnded(Q.sessionId)){Z.state.clearPendingSessionEnd(Q.sessionId);continue}let G=I0(Q.sessionFile,Z.config.excludedCustomTypes);if(!G.loaded){await j0(Z,{sessionId:Q.sessionId,agentId:Q.agentId,transcript:void 0,reason:Q.reason,project:void 0});continue}if(!await j0(Z,{sessionId:G.sessionId??Q.sessionId,agentId:Q.agentId,transcript:G.transcript,reason:Q.reason,project:G.project}))continue;Z.state.markSessionEnded(Q.sessionId),Z.state.clearPendingSessionData(Q.sessionId),Z.state.clearPendingSessionEnd(Q.sessionId)}}async function t(Z,Q){await W0(Z);let G=n(Q);Z.state.setActiveSession(G.sessionId,G.sessionFile),Z.state.clearSessionEnded(G.sessionId);let B=await Z.client.postResult(\"/api/hooks/session-start\",{harness:Z.config.harness,project:G.project,agentId:Z.agentId,sessionKey:G.sessionId,runtimePath:Z.config.runtimePath},Z.config.sessionStartTimeout()),O=B.ok?B.data.inject??B.data.recentContext??\"\":Z.config.staticFallback(B.reason===\"timeout\"?\"timeout\":\"offline\");Z.state.setSessionContext(O),Z.state.setPendingSessionContext(G.sessionId,O)}async function V0(Z,Q){await W0(Z);let G=n(Q);if(!G.sessionId)return;if(G.sessionId===Z.state.getActiveSessionId()&&G.sessionFile===Z.state.getActiveSessionFile())return;await t(Z,Q)}async function b0(Z,Q,G){await W0(Z);let B=n(Q);if(Z.state.sessionAlreadyEnded(B.sessionId))return;if(!await j0(Z,{sessionId:B.sessionId,agentId:Z.agentId,transcript:A0(f5(Q),Z.config.excludedCustomTypes),reason:G,project:B.project}))return;Z.state.markSessionEnded(B.sessionId),Z.state.clearPendingSessionData(B.sessionId)}async function R0(Z,Q,G){let B=w(Q.previousSessionFile)??Z.state.getActiveSessionFile(),O=I0(B,Z.config.excludedCustomTypes),_=O.sessionId??Z.state.getActiveSessionId();if(Z.state.sessionAlreadyEnded(_))return;if(!O.loaded){if(_)await j0(Z,{sessionId:_,agentId:Z.agentId,transcript:void 0,reason:G,project:void 0});if(_&&B)Z.state.queuePendingSessionEnd(_,B,Z.agentId,G);return}if(!await j0(Z,{sessionId:_,agentId:Z.agentId,transcript:O.transcript,reason:G,project:O.project})){if(_&&B)Z.state.queuePendingSessionEnd(_,B,Z.agentId,G);return}Z.state.markSessionEnded(_),Z.state.clearPendingSessionData(_)}async function q0(Z,Q,G){await W0(Z);let B=w(G);if(!B)return;await V0(Z,Q);let O=n(Q);if(!O.sessionId)return;let _=await Z.client.post(\"/api/hooks/user-prompt-submit\",{harness:Z.config.harness,project:O.project,agentId:Z.agentId,sessionKey:O.sessionId,userMessage:B,runtimePath:Z.config.runtimePath},Z.config.promptSubmitTimeout);if(!_)return;if(_.sessionKnown===!1)await t(Z,Q);let Y=w(_.inject);if(Y)Z.state.queuePendingRecall(O.sessionId,Y)}var HZ=64,K6=4,_6=128;function UZ(Z){return Z.replace(/<\\/signet-memory>/gi,\"<\\\\/signet-memory>\")}function h0(Z,Q){if(Z.size<Q)return;let G=Z.keys().next().value;if(G!==void 0)Z.delete(G)}class m0{pendingSessionContext=new Map;pendingRecall=new Map;pendingSessionEnds=new Map;endedSessions=new Map;activeSessionId;activeSessionFile;sessionContext=\"\";setActiveSession(Z,Q){this.activeSessionId=Z,this.activeSessionFile=Q}getActiveSessionId(){return this.activeSessionId}getActiveSessionFile(){return this.activeSessionFile}setSessionContext(Z){this.sessionContext=Z}getSessionContext(){return this.sessionContext}markSessionEnded(Z){if(!Z)return;if(!this.endedSessions.has(Z))h0(this.endedSessions,_6);this.endedSessions.set(Z,Date.now())}clearSessionEnded(Z){if(!Z)return;this.endedSessions.delete(Z)}sessionAlreadyEnded(Z){if(!Z)return!1;return this.endedSessions.has(Z)}setPendingSessionContext(Z,Q){if(!Z)return;let G=w(Q);if(G){this.pendingSessionContext.set(Z,G);return}this.pendingSessionContext.delete(Z)}clearPendingSessionContext(Z){if(!Z)return;this.pendingSessionContext.delete(Z)}queuePendingRecall(Z,Q){if(!this.pendingRecall.has(Z))h0(this.pendingRecall,HZ);let G=this.pendingRecall.get(Z)??[];G.push(Q);while(G.length>K6)G.shift();this.pendingRecall.set(Z,G)}clearPendingRecall(Z){if(!Z)return;this.pendingRecall.delete(Z)}clearPendingSessionData(Z){if(!Z)return;this.pendingSessionContext.delete(Z),this.pendingRecall.delete(Z),this.pendingSessionEnds.delete(Z)}hasPendingRecall(Z){if(!Z)return!1;let Q=this.pendingRecall.get(Z);return Array.isArray(Q)&&Q.length>0}consumePendingRecall(Z){if(!Z)return;let Q=this.pendingRecall.get(Z);if(!Q||Q.length===0)return;let G=Q.shift();if(Q.length===0)this.pendingRecall.delete(Z);return w(G)}queuePendingSessionEnd(Z,Q,G,B){if(!this.pendingSessionEnds.has(Z))h0(this.pendingSessionEnds,HZ);this.pendingSessionEnds.set(Z,{sessionId:Z,sessionFile:Q,agentId:G,reason:B})}clearPendingSessionEnd(Z){if(!Z)return;this.pendingSessionEnds.delete(Z)}getPendingSessionEnds(){return Array.from(this.pendingSessionEnds.values())}}var O6=\"http://localhost:3850\",L0=\"oh-my-pi\",J0=\"plugin\",u0=5000,p0=1e4,F6=5000,j6=\"SIGNET_SESSION_START_TIMEOUT\",R6=\"SIGNET_FETCH_TIMEOUT\",d0=\"signet-oh-my-pi-hidden-recall\",l0=\"signet-oh-my-pi-session-context\";function q6(Z){return i0(Z,{logPrefix:\"signet-oh-my-pi\",actorName:\"oh-my-pi-extension\",runtimePath:J0,defaultTimeout:u0})}import{homedir as g5}from\"node:os\";import{join as v5}from\"node:path\";var b5=new Set([d0,l0]),L6={harness:L0,runtimePath:J0,writeTimeout:p0,promptSubmitTimeout:F6,excludedCustomTypes:b5,sessionStartTimeout:()=>B6(p(j6)??p(R6)),staticFallback:(Z)=>{let Q=p(\"SIGNET_PATH\")??v5(g5(),\".agents\");if(Z===\"timeout\")return v0(Q,Y6)??\"\";return v0(Q)??\"\"}};function h5(Z,Q){return{role:\"custom\",customType:Z,display:!1,content:`<signet-memory source=\"auto-recall\">\n${UZ(Q)}\n</signet-memory>`,attribution:\"agent\",timestamp:Date.now()}}function m5(Z,Q){let G=[w(Z),w(Q)].filter((B)=>typeof B===\"string\"&&B.length>0);if(G.length===0)return;return G.join(`\n\n`)}class A6 extends m0{consumePersistentHiddenInject(Z){if(!Z)return;let Q=w(this.pendingSessionContext.get(Z));this.pendingSessionContext.delete(Z);let G=this.consumePendingRecall(Z),B=m5(Q,G);if(!B)return;return h5(G?d0:l0,B)}}function I6(){return new A6}function u5(Z,Q){Z.on(\"session_start\",async(G,B)=>{await t(Q,B)}),Z.on(\"session_switch\",async(G,B)=>{await R0(Q,G,G.type),await t(Q,B)}),Z.on(\"session_branch\",async(G,B)=>{await R0(Q,G,G.type),await t(Q,B)}),Z.on(\"session_shutdown\",async(G,B)=>{await b0(Q,B,\"session_shutdown\")})}function p5(Z,Q){Z.on(\"input\",async(G,B)=>{let O=n(B);Q.state.clearPendingRecall(O.sessionId),await q0(Q,B,G.text)}),Z.on(\"before_agent_start\",async(G,B)=>{await V0(Q,B);let O=n(B);if(!O.sessionId)return;if(!Q.state.hasPendingRecall(O.sessionId))await q0(Q,B,G.prompt);let _=Q.state.consumePersistentHiddenInject(O.sessionId);if(!_)return;return{message:_}})}function d5(Z,Q){Z.on(\"session.compacting\",async(G,B)=>{await V0(Q,B);let O=n(B),_=await Q.client.post(\"/api/hooks/pre-compaction\",{harness:L0,sessionKey:O.sessionId??w(G.sessionId),messageCount:Array.isArray(G.messages)?G.messages.length:void 0,runtimePath:J0},u0);if(!_&&!Q.state.getSessionContext())return;let Y=w(_?.guidelines)??w(Q.state.getSessionContext()),U=w(_?.summaryPrompt);if(!Y&&!U)return;return{context:Y?[Y]:void 0,prompt:U}}),Z.on(\"session_compact\",async(G,B)=>{let O=w(G.compactionEntry?.summary);if(!O)return;let _=n(B);await Q.client.post(\"/api/hooks/compaction-complete\",{harness:L0,summary:O,project:_.project,sessionKey:_.sessionId,agentId:Q.agentId,runtimePath:J0},p0)})}var l5=(Z)=>{if(H0(\"SIGNET_ENABLED\")===\"false\")return;if(H0(\"SIGNET_BYPASS\")===\"1\")return;let Q={agentId:p(\"SIGNET_AGENT_ID\"),client:q6(p(\"SIGNET_DAEMON_URL\")??O6),state:I6(),config:L6};u5(Z,Q),p5(Z,Q),d5(Z,Q)},W7=l5;export{W7 as default};\n";
8
8
  //# sourceMappingURL=extension-bundle.d.ts.map