@enfyra/kernel 1.1.60 → 1.1.62

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- "use strict";var x=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var $=x((ie,S)=>{"use strict";function j({handles:e,createHandleId:t,callIsolateCallback:n}){function a(f,r){if(r==null)return r;let l=typeof r;if(l==="string"||l==="number"||l==="boolean")return r;if(r instanceof Date)return{__date:r.toISOString()};if(r instanceof Set)return{__set:Array.from(r.values()).map(i=>a(f,i))};if(r instanceof Map)return{__map:Array.from(r.entries()).map(([i,d])=>[a(f,i),a(f,d)])};if(r instanceof RegExp)return{__regexp:{source:r.source,flags:r.flags}};if(r instanceof Error)return{__error:{name:r.name,message:r.message,stack:r.stack}};if(typeof URL<"u"&&r instanceof URL)return{__url:r.href};if(typeof URLSearchParams<"u"&&r instanceof URLSearchParams)return{__urlSearchParams:r.toString()};if(typeof Buffer<"u"&&Buffer.isBuffer(r)||r._isBuffer===!0)return o(f,r);if(ArrayBuffer.isView(r))return{__typedArray:r.constructor?.name||"Uint8Array",data:Array.from(r)};if(r instanceof ArrayBuffer)return{__arrayBuffer:Array.from(new Uint8Array(r))};if(Array.isArray(r))return r.map(i=>a(f,i));if(l==="object"&&U(r)){let i={};for(let[d,C]of Object.entries(r))i[d]=a(f,C);return i}return o(f,r)}function o(f,r){let l=t(f);return e.set(l,r),{__pkgHandle:l}}function c(f,r){if(!r||typeof r!="object")return r;if(r.__fnRef)return(...i)=>n(f,r.__fnRef,i);if(r.__pkgHandleArg){let i=e.get(r.__pkgHandleArg);if(!i)throw new Error(`Package argument handle not found: ${r.__pkgHandleArg}`);return i}if(r.__date)return new Date(r.__date);if(r.__set)return new Set(r.__set.map(i=>c(f,i)));if(r.__map)return new Map(r.__map.map(([i,d])=>[c(f,i),c(f,d)]));if(r.__regexp)return new RegExp(r.__regexp.source,r.__regexp.flags||"");if(r.__error){let i=new Error(r.__error.message||"");return i.name=r.__error.name||"Error",r.__error.stack&&(i.stack=r.__error.stack),i}if(r.__url)return new URL(r.__url);if(r.__urlSearchParams)return new URLSearchParams(r.__urlSearchParams);if(r.__blob)return new Blob([Uint8Array.from(r.__blob.data||[])],{type:r.__blob.type||""});if(r.__file){let i=[Uint8Array.from(r.__file.data||[])],d={type:r.__file.type||"",lastModified:r.__file.lastModified};return typeof File<"u"?new File(i,r.__file.name||"file",d):new Blob(i,d)}if(r.__formData){let i=new FormData;for(let[d,C]of r.__formData)i.append(d,c(f,C));return i}if(r.__typedArray){let i=globalThis[r.__typedArray]||Uint8Array;return new i(r.data||[])}if(r.__arrayBuffer)return Uint8Array.from(r.__arrayBuffer).buffer;if(Array.isArray(r))return r.map(i=>c(f,i));let l={};for(let[i,d]of Object.entries(r))l[i]=c(f,d);return l}function s(f,r){return JSON.parse(r||"[]").map(l=>c(f,l))}return{createPackageHandle:o,deserializePackageArg:c,deserializePackageArgs:s,serializePackageValue:a}}function U(e){if(e===null||typeof e!="object")return!1;let t=Object.getPrototypeOf(e);return t!==Object.prototype&&t!==null?!1:!Object.values(e).some(n=>typeof n=="function")}S.exports={createPackageRuntimeCodec:j}});var{AsyncLocalStorage:B}=require("node:async_hooks"),L=require("node:http"),N=require("node:https"),O=require("node:net"),H=require("node:tls"),_=require("node:http2"),{createPackageRuntimeCodec:z}=$(),R=new B,A=new Map,y=new Map,w=new Map,h=new Map,m=new Map,P=new Map,p=new Map,g=new Map,q=0,F=0,D=0;function G(e){return Math.max(1,Math.trunc(Number(e)||3e4))}function k(e){let t=m.get(e);return t||(t=new AbortController,m.set(e,t)),t}function T(e){k(e).abort();for(let[t,n]of P)if(n.taskId===e){try{typeof n.stream.destroy=="function"&&n.stream.destroy(new Error("Package stream cancelled")),typeof n.iterator?.return=="function"&&Promise.resolve(n.iterator.return()).catch(()=>{})}catch{}P.delete(t)}}function J(e){p.set(e,(p.get(e)||0)+1)}function V(e){let t=Math.max(0,(p.get(e)||1)-1);if(t>0){p.set(e,t);return}p.delete(e);let n=g.get(e);if(n){g.delete(e);for(let a of n)process.send?.({type:"taskCancelled",id:a,taskId:e,ok:!0,value:!0})}}function K(e,t){if(!p.has(t)){process.send?.({type:"taskCancelled",id:e,taskId:t,ok:!0,value:!0});return}let n=g.get(t);n||(n=new Set,g.set(t,n)),n.add(e)}function E(){return R.getStore()}function M(e){let t=E();if(!t||!e)return e;let n=k(t).signal;if(n.aborted)return e.destroy(new Error("Package call cancelled")),e;let a=()=>{try{e.destroy(new Error("Package call cancelled"))}catch{}};return n.addEventListener("abort",a,{once:!0}),e.once("close",()=>{n.removeEventListener("abort",a)}),e}function I(e){let t=E();if(!t||!e||typeof e.destroy!="function")return e;let n=k(t).signal;if(n.aborted)return e.destroy(new Error("Package call cancelled")),e;let a=()=>{try{e.destroy(new Error("Package call cancelled"))}catch{}};return n.addEventListener("abort",a,{once:!0}),e.once("close",()=>{n.removeEventListener("abort",a)}),e}function W(){for(let t of[L,N]){if(t.__enfyraCancelPatched)continue;t.__enfyraCancelPatched=!0;let n=t.request,a=t.get;t.request=function(...c){return M(n.apply(t,c))},t.get=function(...c){return M(a.apply(t,c))}}for(let[t,n]of[[O,["connect","createConnection"]],[H,["connect"]]])if(!t.__enfyraCancelPatched){t.__enfyraCancelPatched=!0;for(let a of n){let o=t[a];typeof o=="function"&&(t[a]=function(...s){return I(o.apply(t,s))})}}if(!_.__enfyraCancelPatched){_.__enfyraCancelPatched=!0;let t=_.connect;_.connect=function(...a){return I(t.apply(_,a))}}let e=globalThis.fetch;typeof e=="function"&&!globalThis.__enfyraFetchCancelPatched&&(globalThis.__enfyraFetchCancelPatched=!0,globalThis.fetch=function(n,a){let o=E();if(o){let c=a&&typeof a=="object"?a:{};c.signal||(a={...c,signal:k(o).signal})}return e.call(globalThis,n,a)})}W();function Q(e){let t=v(e.taskId,e.argsJson),n=(e.path||[]).join(".");if(e.packageName==="undici"&&(n==="request"||n==="fetch")){let a=t[1]&&typeof t[1]=="object"?t[1]:{};t[1]={...a,signal:k(e.taskId).signal}}return t}function X(e,t,n){T(t),process.send?.({id:e,ok:!1,error:{message:n,code:"ERR_PACKAGE_RUNTIME_TIMEOUT",details:{outcome:"unknown_outcome",retryable:!1}}})}var{createPackageHandle:Y,deserializePackageArg:Z,deserializePackageArgs:v,serializePackageValue:u}=z({handles:y,createHandleId:e=>`${e}:pkg_${++q}`,callIsolateCallback:te});async function ee(e){let t=e.fileUrl||e.name;if(A.has(t))return A.get(t);let n=e.name&&e.name.startsWith("node:")?e.name:e.fileUrl||e.name;if(!n)throw new Error(`Package "${e.name}" cannot be imported by package runtime`);let a=await import(n);return A.set(t,a),a}function b(e,t){if(!t||t.length===0)return{target:e&&e.default!==void 0?e.default:e,receiver:void 0};let n=e,a;for(let o=0;o<t.length;o++){let c=t[o];if(n==null&&o===0&&e.default!==void 0&&(n=e.default),n!=null&&c in n){a=n,n=n[c];continue}if(o===0&&e.default!==void 0&&e.default!==n&&c in e.default){a=e.default,n=e.default[c];continue}throw new Error(`Package export not found: ${t.join(".")}`)}return{target:n,receiver:a}}function te(e,t,n){return new Promise((a,o)=>{let c=`cb_${++F}`;w.set(c,{resolve:a,reject:o,taskId:e});try{process.send?.({type:"pkgCallbackCall",id:c,taskId:e,callbackId:t,argsJson:JSON.stringify(n.map(s=>u(e,s)))})}catch(s){w.delete(c),o(s)}})}async function re(e){let t=Q(e);if(e.op==="handleCall"){let c=y.get(e.handleId);if(!c)throw new Error(`Package handle not found: ${e.handleId}`);let{target:s,receiver:f}=b(c,e.path||[]);if(typeof s!="function")return u(e.taskId,s);let r=await s.apply(f||c,t);return u(e.taskId,r)}if(e.op==="handleGet"){let c=y.get(e.handleId);if(!c)throw new Error(`Package handle not found: ${e.handleId}`);let{target:s,receiver:f}=b(c,e.path||[]);return u(e.taskId,typeof s=="function"&&f?s.bind(f):s)}let n=await ee(e.package),{target:a,receiver:o}=b(n,e.path||[]);if(e.op==="construct"){if(typeof a!="function")throw new Error(`Package export is not constructable: ${e.packageName}.${(e.path||[]).join(".")}`);return Y(e.taskId,new a(...t))}return typeof a=="function"?u(e.taskId,await a.apply(o,t)):u(e.taskId,a)}function ne(e,t,n){return new Promise((a,o)=>{let c=`stream_${++D}`;h.set(c,{resolve:a,reject:o});try{process.send?.({type:"pkgStreamChunk",id:e,ackId:c,taskId:t,chunk:Buffer.from(n).toString("base64")},s=>{s&&(h.delete(c),o(s))})}catch(s){h.delete(c),o(s)}})}async function ae(e){let t=y.get(e.handleId);if(!t)throw new Error(`Package handle not found: ${e.handleId}`);let{target:n}=b(t,e.path||[]),a=n||t;if(!a||typeof a[Symbol.asyncIterator]!="function"&&typeof a.on!="function")throw new Error(`Package handle is not a readable stream: ${e.handleId}`);let o=typeof a[Symbol.asyncIterator]=="function"?a[Symbol.asyncIterator]():a;P.set(e.id,{taskId:e.taskId,stream:a,iterator:o});try{for(;;){let c=await o.next();if(c.done)break;await ne(e.id,e.taskId,c.value)}}finally{P.delete(e.id)}}function oe(e){T(e),m.delete(e);for(let t of y.keys())t.startsWith(`${e}:`)&&y.delete(t)}process.on("message",async e=>{if(!e)return;if(e.type==="pkgStreamAck"||e.type==="pkgStreamError"){let o=h.get(e.ackId);if(!o)return;h.delete(e.ackId),e.type==="pkgStreamAck"?o.resolve(!0):o.reject(new Error(e.error?.message||"Package stream failed"));return}if(e.type==="pkgCallbackResult"||e.type==="pkgCallbackError"){let o=w.get(e.id);if(!o)return;w.delete(e.id),e.type==="pkgCallbackResult"?o.resolve(Z(o.taskId,e.value)):o.reject(new Error(e.error?.message||"Package callback failed"));return}if(e.op==="cancelTask"){T(e.taskId),K(e.id,e.taskId);return}if(!e.op)return;let t=!1,n=G(e.timeoutMs),a=setTimeout(()=>{if(t)return;t=!0;let o=[e.op?`op=${e.op}`:null,e.packageName?`package=${e.packageName}`:null,e.handleId?`handle=${e.handleId}`:null,Array.isArray(e.path)?`path=${e.path.join(".")||"<root>"}`:null].filter(Boolean).join(" "),c=`Package runtime call timed out after ${n}ms${o?` (${o})`:""}`;X(e.id,e.taskId,c)},n);try{if(e.op==="releaseTask"){t=!0,clearTimeout(a),oe(e.taskId),e.fire||process.send?.({id:e.id,ok:!0,value:!0});return}J(e.taskId);let o=await R.run(e.taskId,()=>e.op==="streamHandle"?ae(e):re(e));if(t)return;t=!0,clearTimeout(a),process.send?.({id:e.id,ok:!0,value:o})}catch(o){if(t)return;t=!0,clearTimeout(a);let c=[e.op?`op=${e.op}`:null,e.packageName?`package=${e.packageName}`:null,e.handleId?`handle=${e.handleId}`:null,Array.isArray(e.path)?`path=${e.path.join(".")||"<root>"}`:null].filter(Boolean).join(" ");process.send?.({id:e.id,ok:!1,error:{message:c?`${o.message} (${c})`:o.message,stack:o.stack}})}finally{e.op!=="releaseTask"&&V(e.taskId)}});process.on("disconnect",()=>{process.exit(1)});
1
+ "use strict";var x=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var $=x((fe,S)=>{"use strict";function j({handles:e,createHandleId:t,callIsolateCallback:n}){function a(f,r){if(r==null)return r;let l=typeof r;if(l==="string"||l==="number"||l==="boolean")return r;if(r instanceof Date)return{__date:r.toISOString()};if(r instanceof Set)return{__set:Array.from(r.values()).map(i=>a(f,i))};if(r instanceof Map)return{__map:Array.from(r.entries()).map(([i,d])=>[a(f,i),a(f,d)])};if(r instanceof RegExp)return{__regexp:{source:r.source,flags:r.flags}};if(r instanceof Error)return{__error:{name:r.name,message:r.message,stack:r.stack}};if(typeof URL<"u"&&r instanceof URL)return{__url:r.href};if(typeof URLSearchParams<"u"&&r instanceof URLSearchParams)return{__urlSearchParams:r.toString()};if(typeof Buffer<"u"&&Buffer.isBuffer(r)||r._isBuffer===!0)return o(f,r);if(ArrayBuffer.isView(r))return{__typedArray:r.constructor?.name||"Uint8Array",data:Array.from(r)};if(r instanceof ArrayBuffer)return{__arrayBuffer:Array.from(new Uint8Array(r))};if(Array.isArray(r))return r.map(i=>a(f,i));if(l==="object"&&U(r)){let i={};for(let[d,A]of Object.entries(r))i[d]=a(f,A);return i}return o(f,r)}function o(f,r){let l=t(f);return e.set(l,r),{__pkgHandle:l}}function c(f,r){if(!r||typeof r!="object")return r;if(r.__fnRef)return(...i)=>n(f,r.__fnRef,i);if(r.__pkgHandleArg){let i=e.get(r.__pkgHandleArg);if(!i)throw new Error(`Package argument handle not found: ${r.__pkgHandleArg}`);return i}if(r.__date)return new Date(r.__date);if(r.__set)return new Set(r.__set.map(i=>c(f,i)));if(r.__map)return new Map(r.__map.map(([i,d])=>[c(f,i),c(f,d)]));if(r.__regexp)return new RegExp(r.__regexp.source,r.__regexp.flags||"");if(r.__error){let i=new Error(r.__error.message||"");return i.name=r.__error.name||"Error",r.__error.stack&&(i.stack=r.__error.stack),i}if(r.__url)return new URL(r.__url);if(r.__urlSearchParams)return new URLSearchParams(r.__urlSearchParams);if(r.__blob)return new Blob([Uint8Array.from(r.__blob.data||[])],{type:r.__blob.type||""});if(r.__file){let i=[Uint8Array.from(r.__file.data||[])],d={type:r.__file.type||"",lastModified:r.__file.lastModified};return typeof File<"u"?new File(i,r.__file.name||"file",d):new Blob(i,d)}if(r.__formData){let i=new FormData;for(let[d,A]of r.__formData)i.append(d,c(f,A));return i}if(r.__typedArray){let i=globalThis[r.__typedArray]||Uint8Array;return new i(r.data||[])}if(r.__arrayBuffer)return Uint8Array.from(r.__arrayBuffer).buffer;if(Array.isArray(r))return r.map(i=>c(f,i));let l={};for(let[i,d]of Object.entries(r))l[i]=c(f,d);return l}function s(f,r){return JSON.parse(r||"[]").map(l=>c(f,l))}return{createPackageHandle:o,deserializePackageArg:c,deserializePackageArgs:s,serializePackageValue:a}}function U(e){if(e===null||typeof e!="object")return!1;let t=Object.getPrototypeOf(e);return t!==Object.prototype&&t!==null?!1:!Object.values(e).some(n=>typeof n=="function")}S.exports={createPackageRuntimeCodec:j}});var{AsyncLocalStorage:B}=require("node:async_hooks"),N=require("node:http"),O=require("node:https"),H=require("node:net"),L=require("node:tls"),_=require("node:http2"),{createPackageRuntimeCodec:z}=$(),R=new B,C=new Map,y=new Map,w=new Map,h=new Map,m=new Map,P=new Map,p=new Map,g=new Map,D=0,F=0,q=0;function G(e){return Math.max(1,Math.trunc(Number(e)||3e4))}function k(e){let t=m.get(e);return t||(t=new AbortController,m.set(e,t)),t}function T(e){k(e).abort();for(let[t,n]of P)if(n.taskId===e){try{typeof n.stream.destroy=="function"&&n.stream.destroy(new Error("Package stream cancelled")),typeof n.iterator?.return=="function"&&Promise.resolve(n.iterator.return()).catch(()=>{})}catch{}P.delete(t)}}function J(e){p.set(e,(p.get(e)||0)+1)}function K(e){let t=Math.max(0,(p.get(e)||1)-1);if(t>0){p.set(e,t);return}p.delete(e);let n=g.get(e);if(n){g.delete(e);for(let a of n)process.send?.({type:"taskCancelled",id:a,taskId:e,ok:!0,value:!0})}}function V(e,t){if(!p.has(t)){process.send?.({type:"taskCancelled",id:e,taskId:t,ok:!0,value:!0});return}let n=g.get(t);n||(n=new Set,g.set(t,n)),n.add(e)}function E(){return R.getStore()}function M(e){let t=E();if(!t||!e)return e;let n=k(t).signal;if(n.aborted)return e.destroy(new Error("Package call cancelled")),e;let a=()=>{try{e.destroy(new Error("Package call cancelled"))}catch{}};return n.addEventListener("abort",a,{once:!0}),e.once("close",()=>{n.removeEventListener("abort",a)}),e}function I(e){let t=E();if(!t||!e||typeof e.destroy!="function")return e;let n=k(t).signal;if(n.aborted)return e.destroy(new Error("Package call cancelled")),e;let a=()=>{try{e.destroy(new Error("Package call cancelled"))}catch{}};return n.addEventListener("abort",a,{once:!0}),e.once("close",()=>{n.removeEventListener("abort",a)}),e}function W(){for(let t of[N,O]){if(t.__enfyraCancelPatched)continue;t.__enfyraCancelPatched=!0;let n=t.request,a=t.get;t.request=function(...c){return M(n.apply(t,c))},t.get=function(...c){return M(a.apply(t,c))}}for(let[t,n]of[[H,["connect","createConnection"]],[L,["connect"]]])if(!t.__enfyraCancelPatched){t.__enfyraCancelPatched=!0;for(let a of n){let o=t[a];typeof o=="function"&&(t[a]=function(...s){return I(o.apply(t,s))})}}if(!_.__enfyraCancelPatched){_.__enfyraCancelPatched=!0;let t=_.connect;_.connect=function(...a){return I(t.apply(_,a))}}let e=globalThis.fetch;typeof e=="function"&&!globalThis.__enfyraFetchCancelPatched&&(globalThis.__enfyraFetchCancelPatched=!0,globalThis.fetch=function(n,a){let o=E();if(o){let c=a&&typeof a=="object"?a:{};c.signal||(a={...c,signal:k(o).signal})}return e.call(globalThis,n,a)})}W();function Y(e){let t=v(e.taskId,e.argsJson),n=(e.path||[]).join(".");if(e.packageName==="undici"&&(n==="request"||n==="fetch")){let a=t[1]&&typeof t[1]=="object"?t[1]:{};t[1]={...a,signal:k(e.taskId).signal}}return t}function Q(e,t,n){T(t),process.send?.({id:e,ok:!1,error:{message:n,code:"ERR_PACKAGE_RUNTIME_TIMEOUT",details:{outcome:"unknown_outcome",retryable:!1}}})}var{createPackageHandle:X,deserializePackageArg:Z,deserializePackageArgs:v,serializePackageValue:u}=z({handles:y,createHandleId:e=>`${e}:pkg_${++D}`,callIsolateCallback:re}),ee=new Set(["__proto__","prototype","constructor","caller","callee","arguments"]);async function te(e){let t=e.fileUrl||e.name;if(C.has(t))return C.get(t);let n=e.name&&e.name.startsWith("node:")?e.name:e.fileUrl||e.name;if(!n)throw new Error(`Package "${e.name}" cannot be imported by package runtime`);let a=await import(n);return C.set(t,a),a}function b(e,t){if(!t||t.length===0)return{target:e&&e.default!==void 0?e.default:e,receiver:void 0};let n=e,a;for(let o=0;o<t.length;o++){let c=t[o];if(ee.has(c))throw new Error(`Package property is forbidden: ${c}`);if(n==null&&o===0&&e.default!==void 0&&(n=e.default),n!=null&&c in n){a=n,n=n[c];continue}if(o===0&&e.default!==void 0&&e.default!==n&&c in e.default){a=e.default,n=e.default[c];continue}throw new Error(`Package export not found: ${t.join(".")}`)}return{target:n,receiver:a}}function re(e,t,n){return new Promise((a,o)=>{let c=`cb_${++F}`;w.set(c,{resolve:a,reject:o,taskId:e});try{process.send?.({type:"pkgCallbackCall",id:c,taskId:e,callbackId:t,argsJson:JSON.stringify(n.map(s=>u(e,s)))})}catch(s){w.delete(c),o(s)}})}async function ne(e){let t=Y(e);if(e.op==="handleCall"){let c=y.get(e.handleId);if(!c)throw new Error(`Package handle not found: ${e.handleId}`);let{target:s,receiver:f}=b(c,e.path||[]);if(typeof s!="function")return u(e.taskId,s);let r=await s.apply(f||c,t);return u(e.taskId,r)}if(e.op==="handleGet"){let c=y.get(e.handleId);if(!c)throw new Error(`Package handle not found: ${e.handleId}`);let{target:s,receiver:f}=b(c,e.path||[]);return u(e.taskId,typeof s=="function"&&f?s.bind(f):s)}let n=await te(e.package),{target:a,receiver:o}=b(n,e.path||[]);if(e.op==="construct"){if(typeof a!="function")throw new Error(`Package export is not constructable: ${e.packageName}.${(e.path||[]).join(".")}`);return X(e.taskId,new a(...t))}return typeof a=="function"?u(e.taskId,await a.apply(o,t)):u(e.taskId,a)}function ae(e,t,n){return new Promise((a,o)=>{let c=`stream_${++q}`;h.set(c,{resolve:a,reject:o});try{process.send?.({type:"pkgStreamChunk",id:e,ackId:c,taskId:t,chunk:Buffer.from(n).toString("base64")},s=>{s&&(h.delete(c),o(s))})}catch(s){h.delete(c),o(s)}})}async function oe(e){let t=y.get(e.handleId);if(!t)throw new Error(`Package handle not found: ${e.handleId}`);let{target:n}=b(t,e.path||[]),a=n||t;if(!a||typeof a[Symbol.asyncIterator]!="function"&&typeof a.on!="function")throw new Error(`Package handle is not a readable stream: ${e.handleId}`);let o=typeof a[Symbol.asyncIterator]=="function"?a[Symbol.asyncIterator]():a;P.set(e.id,{taskId:e.taskId,stream:a,iterator:o});try{for(;;){let c=await o.next();if(c.done)break;await ae(e.id,e.taskId,c.value)}}finally{P.delete(e.id)}}function ce(e){T(e),m.delete(e);for(let t of y.keys())t.startsWith(`${e}:`)&&y.delete(t)}process.on("message",async e=>{if(!e)return;if(e.type==="pkgStreamAck"||e.type==="pkgStreamError"){let o=h.get(e.ackId);if(!o)return;h.delete(e.ackId),e.type==="pkgStreamAck"?o.resolve(!0):o.reject(new Error(e.error?.message||"Package stream failed"));return}if(e.type==="pkgCallbackResult"||e.type==="pkgCallbackError"){let o=w.get(e.id);if(!o)return;w.delete(e.id),e.type==="pkgCallbackResult"?o.resolve(Z(o.taskId,e.value)):o.reject(new Error(e.error?.message||"Package callback failed"));return}if(e.op==="cancelTask"){T(e.taskId),V(e.id,e.taskId);return}if(!e.op)return;let t=!1,n=G(e.timeoutMs),a=setTimeout(()=>{if(t)return;t=!0;let o=[e.op?`op=${e.op}`:null,e.packageName?`package=${e.packageName}`:null,e.handleId?`handle=${e.handleId}`:null,Array.isArray(e.path)?`path=${e.path.join(".")||"<root>"}`:null].filter(Boolean).join(" "),c=`Package runtime call timed out after ${n}ms${o?` (${o})`:""}`;Q(e.id,e.taskId,c)},n);try{if(e.op==="releaseTask"){t=!0,clearTimeout(a),ce(e.taskId),e.fire||process.send?.({id:e.id,ok:!0,value:!0});return}J(e.taskId);let o=await R.run(e.taskId,()=>e.op==="streamHandle"?oe(e):ne(e));if(t)return;t=!0,clearTimeout(a),process.send?.({id:e.id,ok:!0,value:o})}catch(o){if(t)return;t=!0,clearTimeout(a);let c=[e.op?`op=${e.op}`:null,e.packageName?`package=${e.packageName}`:null,e.handleId?`handle=${e.handleId}`:null,Array.isArray(e.path)?`path=${e.path.join(".")||"<root>"}`:null].filter(Boolean).join(" ");process.send?.({id:e.id,ok:!1,error:{message:c?`${o.message} (${c})`:o.message,stack:o.stack}})}finally{e.op!=="releaseTask"&&K(e.taskId)}});process.on("disconnect",()=>{process.exit(1)});
@@ -1,4 +1,4 @@
1
- "use strict";var ne=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var ae=ne((et,re)=>{"use strict";var{fork:xe}=require("child_process"),Pe=require("path");function Se({workerDir:e,activeTaskContexts:t}){let a=new Map,n=new Map,r=new Map,i=new Map,s=null,y=0,_=1e3;function m(l){return Math.max(1,Math.trunc(Number(l)||3e4))}function v(l,o,c){let f=new Error(l);return f.code=o,f.details=c,f}function R(l,o){for(let[c,f]of n)f.child===l&&(clearTimeout(f.timer),n.delete(c),r.delete(c),f.reject(o))}function d(l){for(let[o,c]of i)c.child===l&&(clearTimeout(c.timer),i.delete(o))}function u(l,o){if(!l.connected)return;let c=`cancel_${++y}`,f=setTimeout(()=>{i.delete(c);try{l.kill()}catch{}},_);f.unref?.(),i.set(c,{child:l,timer:f});try{l.send({op:"cancelTask",taskId:o,id:c})}catch{clearTimeout(f),i.delete(c);try{l.kill()}catch{}}}function k(l){let o=typeof l=="string"?JSON.parse(l):l;if(o?.error)throw new Error(o.error);return o?.value}async function b(l){let o=t.get(l.taskId);if(!o)throw new Error(`Package callback context not found: ${l.taskId}`);let c=JSON.stringify(l.callbackId),f=JSON.stringify(l.argsJson||"[]"),h=await o.evalClosure(`return __invokeRuntimeCallback(${c}, ${f});`,[],{arguments:{copy:!0},result:{promise:!0,copy:!0}});return k(h)}function w(){if(s&&s.connected)return s;let l=Pe.join(e,"package-runtime.child.js"),o=xe(l,[],{stdio:["ignore","ignore","ignore","ipc"],env:{PATH:process.env.PATH||"",HOME:process.env.HOME||"",NODE_ENV:process.env.NODE_ENV||"production",TMPDIR:process.env.TMPDIR||"",LANG:process.env.LANG||""}});return s=o,o.on("message",c=>{if(!c||!c.id)return;if(c.type==="pkgStreamChunk"){let h=r.get(c.id);if(!h)return;h.onChunk(Buffer.from(c.chunk||"","base64")).then(()=>{try{o.send({type:"pkgStreamAck",ackId:c.ackId})}catch{}}).catch(N=>{try{o.send({type:"pkgStreamError",ackId:c.ackId,error:{message:N.message,stack:N.stack}})}catch{}});return}if(c.type==="taskCancelled"){let h=i.get(c.id);if(!h||h.child!==o)return;clearTimeout(h.timer),i.delete(c.id);return}if(c.type==="pkgCallbackCall"){b(c).then(h=>{try{o.send({type:"pkgCallbackResult",id:c.id,value:h})}catch{}}).catch(h=>{try{o.send({type:"pkgCallbackError",id:c.id,error:{message:h.message,stack:h.stack}})}catch{}});return}let f=n.get(c.id);if(f)if(clearTimeout(f.timer),n.delete(c.id),r.delete(c.id),c.ok)f.resolve(c.value);else{c.error?.code==="ERR_PACKAGE_RUNTIME_TIMEOUT"&&u(o,f.taskId);let h=v(c.error?.message||"Package runtime call failed",c.error?.code,c.error?.details);h.stack=c.error?.stack||h.stack,f.reject(h)}}),o.on("exit",(c,f)=>{s===o&&(s=null),d(o),R(o,v(`Package runtime exited${f?` with signal ${f}`:` with code ${c}`}`,"ERR_PACKAGE_RUNTIME_LOST",{outcome:"unknown_outcome",retryable:!1}))}),o.on("error",c=>{s===o&&(s=null),d(o),R(o,v(c.message,"ERR_PACKAGE_RUNTIME_LOST",{outcome:"unknown_outcome",retryable:!1}))}),o}function P(l){return new Promise((o,c)=>{let f=w(),h=`pkg_${++y}`,N=m(l.timeoutMs),J=setTimeout(()=>{n.delete(h),r.delete(h),u(f,l.taskId),c(v(`Package runtime call timed out after ${N}ms`,"ERR_PACKAGE_RUNTIME_TIMEOUT",{outcome:"unknown_outcome",retryable:!1}))},N);n.set(h,{child:f,taskId:l.taskId,resolve:o,reject:c,timer:J});try{f.send({...l,id:h},I=>{I&&(clearTimeout(J),n.delete(h),c(I))})}catch(I){clearTimeout(J),n.delete(h),c(I)}})}function C(l,o,c,f=[],h=3e4){return new Promise((N,J)=>{let I=w(),A=`pkg_${++y}`,Q=m(h),ee=setTimeout(()=>{n.delete(A),r.delete(A),u(I,l),J(v(`Package runtime stream timed out after ${Q}ms`,"ERR_PACKAGE_RUNTIME_TIMEOUT",{outcome:"unknown_outcome",retryable:!1}))},Q);n.set(A,{child:I,taskId:l,resolve:N,reject:J,timer:ee}),r.set(A,{onChunk:c});try{I.send({op:"streamHandle",taskId:l,handleId:o,path:f,id:A,timeoutMs:Q},W=>{W&&(clearTimeout(ee),n.delete(A),r.delete(A),J(W))})}catch(W){clearTimeout(ee),n.delete(A),r.delete(A),J(W)}})}function D(l){try{if(!s||!s.connected)return;s.send({...l,id:`pkg_${++y}`,fire:!0})}catch{}}function p(l){try{if(!s||!s.connected)return;u(s,l)}catch{}}async function H(l,o){let c=a.get(l);if(!c)throw new Error("Package context is not available");if(o.handleId)return P({op:o.kind==="get"?"handleGet":"handleCall",taskId:l,handleId:o.handleId,path:o.path||[],argsJson:o.argsJson||"[]",timeoutMs:o.timeoutMs});let f=c.get(o.packageName);if(!f)throw new Error(`Package "${o.packageName}" is not available`);return P({op:o.kind==="construct"?"construct":"call",taskId:l,packageName:o.packageName,package:{name:f.name,fileUrl:f.fileUrl},path:o.path||[],argsJson:o.argsJson||"[]",timeoutMs:o.timeoutMs})}function g(l,o){a.set(l,o)}function x(l){a.delete(l),D({op:"releaseTask",taskId:l})}function $(){if(s){try{s.kill()}catch{}s=null}}return{cleanupTaskPackages:x,cancelTask:p,executePackageRuntimeCall:H,setTaskPackages:g,streamPackageHandle:C,shutdownPackageRuntime:$}}re.exports={createPackageRuntimeBridge:Se}});var oe=ne((tt,se)=>{"use strict";var Ce=`
1
+ "use strict";var ne=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var ae=ne((Ye,re)=>{"use strict";var{fork:ve}=require("child_process"),be=require("path");function xe({workerDir:e,activeTaskContexts:t}){let s=new Map,n=new Map,r=new Map,i=new Map,o=null,y=0,f=1e3;function w(l){return Math.max(1,Math.trunc(Number(l)||3e4))}function b(l,a,c){let p=new Error(l);return p.code=a,p.details=c,p}function R(l,a){for(let[c,p]of n)p.child===l&&(clearTimeout(p.timer),n.delete(c),r.delete(c),p.reject(a))}function d(l){for(let[a,c]of i)c.child===l&&(clearTimeout(c.timer),i.delete(a))}function u(l,a){if(!l.connected)return;let c=`cancel_${++y}`,p=setTimeout(()=>{i.delete(c);try{l.kill()}catch{}},f);p.unref?.(),i.set(c,{child:l,timer:p});try{l.send({op:"cancelTask",taskId:a,id:c})}catch{clearTimeout(p),i.delete(c);try{l.kill()}catch{}}}function m(l){let a=typeof l=="string"?JSON.parse(l):l;if(a?.error)throw new Error(a.error);return a?.value}async function v(l){let a=t.get(l.taskId);if(!a)throw new Error(`Package callback context not found: ${l.taskId}`);let c=JSON.stringify(l.callbackId),p=JSON.stringify(l.argsJson||"[]"),h=await a.evalClosure(`return __invokeRuntimeCallback(${c}, ${p});`,[],{arguments:{copy:!0},result:{promise:!0,copy:!0}});return m(h)}function k(){if(o&&o.connected)return o;let l=be.join(e,"package-runtime.child.js"),a=ve(l,[],{stdio:["ignore","ignore","ignore","ipc"],env:{PATH:process.env.PATH||"",HOME:process.env.HOME||"",NODE_ENV:process.env.NODE_ENV||"production",TMPDIR:process.env.TMPDIR||"",LANG:process.env.LANG||""}});return o=a,a.on("message",c=>{if(!c||!c.id)return;if(c.type==="pkgStreamChunk"){let h=r.get(c.id);if(!h)return;h.onChunk(Buffer.from(c.chunk||"","base64")).then(()=>{try{a.send({type:"pkgStreamAck",ackId:c.ackId})}catch{}}).catch(M=>{try{a.send({type:"pkgStreamError",ackId:c.ackId,error:{message:M.message,stack:M.stack}})}catch{}});return}if(c.type==="taskCancelled"){let h=i.get(c.id);if(!h||h.child!==a)return;clearTimeout(h.timer),i.delete(c.id);return}if(c.type==="pkgCallbackCall"){v(c).then(h=>{try{a.send({type:"pkgCallbackResult",id:c.id,value:h})}catch{}}).catch(h=>{try{a.send({type:"pkgCallbackError",id:c.id,error:{message:h.message,stack:h.stack}})}catch{}});return}let p=n.get(c.id);if(p)if(clearTimeout(p.timer),n.delete(c.id),r.delete(c.id),c.ok)p.resolve(c.value);else{c.error?.code==="ERR_PACKAGE_RUNTIME_TIMEOUT"&&u(a,p.taskId);let h=b(c.error?.message||"Package runtime call failed",c.error?.code,c.error?.details);h.stack=c.error?.stack||h.stack,p.reject(h)}}),a.on("exit",(c,p)=>{o===a&&(o=null),d(a),R(a,b(`Package runtime exited${p?` with signal ${p}`:` with code ${c}`}`,"ERR_PACKAGE_RUNTIME_LOST",{outcome:"unknown_outcome",retryable:!1}))}),a.on("error",c=>{o===a&&(o=null),d(a),R(a,b(c.message,"ERR_PACKAGE_RUNTIME_LOST",{outcome:"unknown_outcome",retryable:!1}))}),a}function P(l){return new Promise((a,c)=>{let p=k(),h=`pkg_${++y}`,M=w(l.timeoutMs),J=setTimeout(()=>{n.delete(h),r.delete(h),u(p,l.taskId),c(b(`Package runtime call timed out after ${M}ms`,"ERR_PACKAGE_RUNTIME_TIMEOUT",{outcome:"unknown_outcome",retryable:!1}))},M);n.set(h,{child:p,taskId:l.taskId,resolve:a,reject:c,timer:J});try{p.send({...l,id:h},I=>{I&&(clearTimeout(J),n.delete(h),c(I))})}catch(I){clearTimeout(J),n.delete(h),c(I)}})}function C(l,a,c,p=[],h=3e4){return new Promise((M,J)=>{let I=k(),N=`pkg_${++y}`,Q=w(h),ee=setTimeout(()=>{n.delete(N),r.delete(N),u(I,l),J(b(`Package runtime stream timed out after ${Q}ms`,"ERR_PACKAGE_RUNTIME_TIMEOUT",{outcome:"unknown_outcome",retryable:!1}))},Q);n.set(N,{child:I,taskId:l,resolve:M,reject:J,timer:ee}),r.set(N,{onChunk:c});try{I.send({op:"streamHandle",taskId:l,handleId:a,path:p,id:N,timeoutMs:Q},G=>{G&&(clearTimeout(ee),n.delete(N),r.delete(N),J(G))})}catch(G){clearTimeout(ee),n.delete(N),r.delete(N),J(G)}})}function D(l){try{if(!o||!o.connected)return;o.send({...l,id:`pkg_${++y}`,fire:!0})}catch{}}function _(l){try{if(!o||!o.connected)return;u(o,l)}catch{}}async function H(l,a){let c=s.get(l);if(!c)throw new Error("Package context is not available");if(a.handleId)return P({op:a.kind==="get"?"handleGet":"handleCall",taskId:l,handleId:a.handleId,path:a.path||[],argsJson:a.argsJson||"[]",timeoutMs:a.timeoutMs});let p=c.get(a.packageName);if(!p)throw new Error(`Package "${a.packageName}" is not available`);return P({op:a.kind==="construct"?"construct":"call",taskId:l,packageName:a.packageName,package:{name:p.name,fileUrl:p.fileUrl},path:a.path||[],argsJson:a.argsJson||"[]",timeoutMs:a.timeoutMs})}function g(l,a){s.set(l,a)}function x(l){s.delete(l),D({op:"releaseTask",taskId:l})}function $(){if(o){try{o.kill()}catch{}o=null}}return{cleanupTaskPackages:x,cancelTask:_,executePackageRuntimeCall:H,setTaskPackages:g,streamPackageHandle:C,shutdownPackageRuntime:$}}re.exports={createPackageRuntimeBridge:xe}});var oe=ne((Ze,se)=>{"use strict";var Pe=`
2
2
  "use strict";
3
3
  let $ctx = {};
4
4
  let $pkgs = {};
@@ -311,56 +311,57 @@ async function __invokeRuntimeCallback(id, argsJson) {
311
311
 
312
312
  const __safeCloneFailed = Symbol('__safeCloneFailed');
313
313
 
314
- async function __safeClone(v, seen) {
314
+ async function __safeClone(v, seen, cyclic) {
315
315
  if (!seen) {
316
- const cloned = await __safeClone(v, new WeakSet());
316
+ const cloned = await __safeClone(v, new WeakSet(), new WeakSet());
317
317
  return cloned === __safeCloneFailed ? null : cloned;
318
318
  }
319
319
  if (v === undefined) return undefined;
320
+ let tracked = false;
320
321
  try {
321
322
  if (v && typeof v.then === 'function') {
322
- return await __safeClone(await v, seen);
323
+ return await __safeClone(await v, seen, cyclic);
323
324
  }
324
325
  if (v && typeof v === 'object') {
325
- if (seen.has(v)) return __safeCloneFailed;
326
+ if (seen.has(v)) {
327
+ cyclic.add(v);
328
+ return null;
329
+ }
326
330
  seen.add(v);
331
+ tracked = true;
327
332
  }
328
333
  if (v instanceof Date) return v.toISOString();
329
334
  if (v instanceof Set) {
330
335
  const out = [];
331
336
  for (const item of v.values()) {
332
- const cloned = await __safeClone(item, seen);
333
- if (cloned === __safeCloneFailed) return __safeCloneFailed;
334
- out.push(cloned);
337
+ const cloned = await __safeClone(item, seen, cyclic);
338
+ out.push(cloned === __safeCloneFailed ? null : cloned);
335
339
  }
336
- return out;
340
+ return cyclic.has(v) ? __safeCloneFailed : out;
337
341
  }
338
342
  if (v instanceof Map) {
339
343
  const out = {};
340
344
  for (const [key, item] of v.entries()) {
341
- const cloned = await __safeClone(item, seen);
342
- if (cloned === __safeCloneFailed) return __safeCloneFailed;
343
- out[String(key)] = cloned;
345
+ const cloned = await __safeClone(item, seen, cyclic);
346
+ out[String(key)] = cloned === __safeCloneFailed ? null : cloned;
344
347
  }
345
- return out;
348
+ return cyclic.has(v) ? __safeCloneFailed : out;
346
349
  }
347
350
  if (Array.isArray(v)) {
348
351
  const out = [];
349
352
  for (const item of v) {
350
- const cloned = await __safeClone(item, seen);
351
- if (cloned === __safeCloneFailed) return __safeCloneFailed;
352
- out.push(cloned);
353
+ const cloned = await __safeClone(item, seen, cyclic);
354
+ out.push(cloned === __safeCloneFailed ? null : cloned);
353
355
  }
354
- return out;
356
+ return cyclic.has(v) ? __safeCloneFailed : out;
355
357
  }
356
358
  if (v && typeof v === 'object') {
357
359
  const out = {};
358
360
  for (const key of Object.keys(v)) {
359
- const cloned = await __safeClone(v[key], seen);
360
- if (cloned === __safeCloneFailed) return __safeCloneFailed;
361
- out[key] = cloned;
361
+ const cloned = await __safeClone(v[key], seen, cyclic);
362
+ out[key] = cloned === __safeCloneFailed ? null : cloned;
362
363
  }
363
- return out;
364
+ return cyclic.has(v) ? __safeCloneFailed : out;
364
365
  }
365
366
  if (typeof v === 'function' && v.__pkgHandlePromise) {
366
367
  return undefined;
@@ -368,6 +369,9 @@ async function __safeClone(v, seen) {
368
369
  return JSON.parse(JSON.stringify(v));
369
370
  }
370
371
  catch { return null; }
372
+ finally {
373
+ if (tracked) seen.delete(v);
374
+ }
371
375
  }
372
376
 
373
377
  const __ctxChangeProtectedKeys = new Set([
@@ -956,30 +960,30 @@ function __cleanupTask() {
956
960
  __pendingRuntimeTasks = [];
957
961
  return true;
958
962
  }
959
- `;function Re(e){return Ce.replace("%%PKG_SETUP%%",e)}se.exports={buildSetupCode:Re}});var{parentPort:$e}=require("worker_threads"),S=$e||{on(e,t){e==="message"&&process.on("message",t)},postMessage(e){process.send?.(e)}},ie=require("fs"),{fileURLToPath:Me}=require("url"),{createPackageRuntimeBridge:Te}=ae(),{buildSetupCode:Ne}=oe(),V;try{V=require("isolated-vm")}catch(e){S.postMessage({type:"error",message:"isolated-vm not available: "+e.message}),process.exit(1)}var q=new Map,_e=0,O=new Map,E=new Map,j=new Map,U=Te({workerDir:__dirname,activeTaskContexts:O}),Ae=500,Ee=5e3,Oe=1,ce=new WeakMap,pe=new WeakMap,ge=new WeakMap,K={created:0,reused:0,released:0,evicted:0,scrubFailed:0};function B(e){let t=j.get(e);return Math.max(1,Math.ceil((t??Date.now()+3e4)-Date.now()))}var M=null,le=0,ue=0,de=0;async function Je(){let e=Date.now();if(e-ue<Ee)return de;if(ue=e,!M)return 0;let t=0;for(let a of M){let n=a?.isolate;if(!(!n||n.isDisposed))try{let r=await n.getHeapStatistics(),i=r.heap_size_limit||1,s=r.used_heap_size/i;s>t&&(t=s)}catch{}}return de=t,t}async function F(e){e.heapRatio=await Je(),e.runnerRssBytes=process.memoryUsage().rss,e.contextStats=Ie(),S.postMessage(e)}function Ie(){let e=0;if(M)for(let t of M)e+=t?.idleContexts?.length||0;return{...K,idle:e}}function ye(e,t,a){if(!M){let n=Math.max(1,Math.trunc(Number(t)||8));M=new Array(n).fill(null)}for(let n=0;n<M.length;n++){let r=(le+n)%M.length,i=M[r];if((!i||!i.isolate||i.isolate.isDisposed)&&(i={isolate:new V.Isolate({memoryLimit:e}),idleContexts:[],taskIds:new Set,contextCapacity:a},M[r]=i),i.taskIds.size<a)return le=(r+1)%M.length,i}throw new Error("No isolate lane is available")}function z(e,t,a){for(let n of[...e.taskIds])n!==t&&(e.taskIds.delete(n),E.delete(n),O.delete(n),j.delete(n),U.cancelTask(n),G(n),S.postMessage({type:"result",id:n,success:!1,error:{message:"Isolate was disposed because a sibling task could not continue",code:"ERR_EXECUTOR_ISOLATE_LOST",details:{outcome:"unknown_outcome",retryable:!1,reason:a}}}),S.postMessage({type:"taskReleased",id:n}));e.idleContexts.length=0;try{e.isolate.dispose()}catch{}}function je(e){let t=E.get(e);if(!t){S.postMessage({type:"taskCancelled",id:e});return}z(t,e,"sibling_cancelled"),U.cancelTask(e),E.delete(e),O.delete(e),j.delete(e),t.taskIds.delete(e),G(e),S.postMessage({type:"taskCancelled",id:e})}function he(e,t){t.taskIds.delete(e)&&(O.delete(e),E.delete(e),j.delete(e),G(e),S.postMessage({type:"taskReleased",id:e}))}async function T(e,t,a){let n=ce.get(e);n||(n=new Map,ce.set(e,n));let r=n.get(t);if(r)return r;let i;try{i=await e.compileScript(t,{filename:a})}catch(s){throw s&&typeof s=="object"&&(s.executionStage="compile"),s}if(n.set(t,i),n.size>Ae){let s=n.keys().next().value;n.delete(s)}return i}S.on("message",async e=>{if(e.type==="execute")Xe(e).catch(async t=>{await F({type:"result",id:e.id,success:!1,error:{message:t.message,stack:t.stack}})});else if(e.type==="executeBatch")Ye(e).catch(async t=>{await F({type:"result",id:e.id,success:!1,error:{message:t.message,stack:t.stack}})});else if(e.type==="invokeRuntimeCallback")Ue(e).catch(t=>{S.postMessage({type:"runtimeCallbackResult",callId:e.callId,error:t?.message||String(t)})});else if(e.type==="callResult"){let t=q.get(e.callId);t&&(q.delete(e.callId),t.resolve(e.result))}else if(e.type==="callError"){let t=q.get(e.callId);t&&(q.delete(e.callId),t.reject(new Error(e.error)))}else e.type==="cancelTask"&&je(e.id)});async function Ue(e){let t=O.get(e.id);if(!t){S.postMessage({type:"runtimeCallbackResult",callId:e.callId,error:`Runtime callback context not found: ${e.id}`});return}let a=await t.evalClosure(`return __invokeRuntimeCallback(${JSON.stringify(e.callbackId)}, ${JSON.stringify(e.argsJson||"[]")});`,[],{arguments:{copy:!0},result:{promise:!0,copy:!0}}),n=JSON.parse(a);S.postMessage({type:"runtimeCallbackResult",callId:e.callId,...n})}function L(e,t,a){return new Promise((n,r)=>{let i=`cb_${++_e}`;q.set(i,{resolve:n,reject:r}),S.postMessage({type:t,id:e,callId:i,...a})})}function He(e,t,a){S.postMessage({type:t,id:e,callId:`f_${++_e}`,...a})}async function Le(e,t){if(t?.method!=="stream")return L(e,"resCall",t);let a=JSON.parse(t.argsJson||"[]"),n=a[0],r=a[1]||{},i=n?.__pkgHandleArg;if(!i)return L(e,"resCall",t);let s=r.observer&&typeof r.observer=="object"?r.observer.__fnRef:null,y=r.transform&&typeof r.transform=="object"?r.transform.__fnRef:null,_=s||y?new TextDecoder("utf-8"):null;delete r.observer,delete r.transform;let m={...r};await L(e,"resCall",{method:"streamStart",argsJson:JSON.stringify([null,m])});let v=async(u,k,b)=>{if(!u)return;let w=O.get(e);if(!w)return;let P=await w.evalClosure(`return __invokeRuntimeCallback(${JSON.stringify(u)}, ${JSON.stringify(JSON.stringify([k,b]))});`,[],{arguments:{copy:!0},result:{promise:!0,copy:!0}}),C=JSON.parse(P);if(C?.error)throw new Error(C.error);if(C?.value?.__e!=="u")return C?.value},R=async(u,k)=>{if(s)try{await v(s,u,k)}catch{}},d=async(u,k,b)=>{let w=u;if(y){let C=await v(y,b,k);if(C===null)return;C!==void 0&&(w=Buffer.from(String(C)))}let P=Buffer.from(w);P.length!==0&&await L(e,"resCall",{method:"streamChunk",chunk:P.toString("base64")})};try{await U.streamPackageHandle(e,i,async k=>{let b="";try{b=_?_.decode(Buffer.from(k),{stream:!0}):""}catch{}await R(b,"chunk"),await d(k,"chunk",b)},[],B(e));let u="";try{u=_?_.decode():""}catch{}await R(u,"end"),await d("","end",u),await L(e,"resCall",{method:"streamEnd"})}catch(u){try{await L(e,"resCall",{method:"streamError",error:{message:u.message,stack:u.stack}})}catch{}throw await R("","error"),u}return JSON.stringify({__e:"u"})}function Fe(e){if(typeof e.sourceCode=="string"&&e.sourceCode.length>0)return e.sourceCode;let t=e.filePath;return!t&&typeof e.fileUrl=="string"&&e.fileUrl.startsWith("file://")&&(t=Me(e.fileUrl)),!t||!ie.existsSync(t)?null:ie.readFileSync(t,"utf8")}async function De(e,t,a){try{let n=Fe(a);if(!n)return null;let r=await e.compileModule(n,{filename:`pkg:${a.safeName}`});await r.instantiate(t,s=>{throw new Error(`Unresolved import in package ${a.safeName}: ${s}`)}),await r.evaluate({timeout:1e4});let i=await r.namespace.get("default");return i!==void 0&&i.typeof!=="undefined"?i.derefInto({release:!1}):r.namespace.derefInto({release:!1})}catch{return null}}function me(e,t){let a=r=>{let i=2166136261;for(let s=0;s<r.length;s++)i^=r.charCodeAt(s),i=Math.imul(i,16777619);return(i>>>0).toString(36)},n=new Set(t||[]);return e.map(r=>{let i=r.cacheKey||`${r.filePath||""}:${r.fileUrl||""}:${r.mtimeMs||""}:${r.size||""}:${a(r.sourceCode||"")}`,s=n.has(r.name)?"isolate":"proxy";return`${r.name}:${r.version||""}:${i}:${s}`}).join("|")}function ke(e,t){let a=new Set(t.map(_=>_.name)),n=new Set,r=String(e||""),i=/\b(?:\$ctx\.)?\$pkgs\s*\[\s*(['"`])([^'"`]+)\1\s*\]/g,s=/\brequire\s*\(\s*(['"`])([^'"`]+)\1\s*\)/g,y=/\b(?:\$ctx\.)?\$pkgs\.([A-Za-z_$][\w$]*)/g;for(let _ of[i,s])for(let m of r.matchAll(_)){let v=m[2];a.has(v)&&n.add(v)}for(let _ of r.matchAll(y)){let m=_[1];a.has(m)&&n.add(m)}return n}async function Ke(e,t,a,n){let r=await e.createContext(),i=r.global;await i.set("global",i.derefInto());let s=[],y=[],_=new Map;for(let d of a){_.set(d.name,d);let u=n.has(d.name)?await De(e,r,d):null;u!==null?(await i.set(`__pkg_${d.safeName}`,u),s.push(d)):y.push(d)}U.setTaskPackages(t,_),await i.set("__callRef",new V.Reference(async(d,u,k)=>{let b=JSON.parse(k);if(u==="pkgCall")try{return JSON.stringify(await U.executePackageRuntimeCall(d,b))}catch(w){throw new Error(JSON.stringify({__userThrow:!0,message:w.message,code:w.code,details:w.details}))}return u==="resCall"?Le(d,b):L(d,u,b)})),await i.set("__fireRef",new V.Reference((d,u,k)=>{let b=JSON.parse(k);He(d,u,b)}));let m=s.map(d=>`$pkgs[${JSON.stringify(d.name)}] = __pkg_${d.safeName};`).concat(y.map(d=>`$pkgs[${JSON.stringify(d.name)}] = __createPkgProxy(${JSON.stringify(d.name)}, []);`)).join(`
960
- `),v=Ne(m);return await(await T(e,v,"setup.js")).run(r,{timeout:B(t)}),pe.set(r,me(a,n)),ge.set(r,_),r}async function we(e,t,a,n,r,i,s){let y=e.isolate,_=me(a,r),m=null;for(let d=e.idleContexts.length-1;d>=0;d--){let u=e.idleContexts[d];if(e.idleContexts.splice(d,1),pe.get(u)===_){m=u,K.reused++;break}try{u.release()}catch{}}m||(m=await Ke(y,t,a,r),K.created++),U.setTaskPackages(t,ge.get(m)||new Map);let v=m.global;return await v.set("__snapshot",new V.ExternalCopy(n).copyInto()),await v.set("__nextTaskId",t),await v.set("__nextTaskTimeoutMs",i),await v.set("__nextTaskDeadlineMs",s),await(await T(y,"__resetTask(__snapshot, __nextTaskId, __nextTaskTimeoutMs, __nextTaskDeadlineMs);","reset-task.js")).run(m,{timeout:B(t)}),m}async function ve(e,t){if(!t||e.isolate.isDisposed)return;try{await(await T(e.isolate,"__cleanupTask();","cleanup-task.js")).run(t,{timeout:5e3})}catch{K.scrubFailed++;try{t.release()}catch{}return}let a=Math.max(1,Math.trunc(Number(e.contextCapacity)||Oe));if(e.idleContexts.length>=a){try{t.release()}catch{}K.evicted++;return}e.idleContexts.push(t),K.released++}function Be(e){try{let t=JSON.parse(e.message);if(t&&t.__userThrow)return{...t,message:t.message??e.message}}catch{}return null}var qe=3,Ve=["setup.js","extract.js","extract-error-ctx.js","set-status.js","populate-error.js"];function Ge(e){if(!e)return null;let t=e.split(`
961
- `);for(let a of t){let n=a.match(/at\s+(.+\.js):(\d+):(\d+)/);if(!n)continue;let r=n[1].trim();if(Ve.includes(r)||r!=="handler.js"&&!r.startsWith("preHook #")&&!r.startsWith("postHook #"))continue;let s=parseInt(n[2])-qe;if(!(s<=0))return{line:s,column:parseInt(n[3]),phase:r.replace(".js","")}}return null}function We(e,t,a){if(!e||!t)return;let n=String(e).split(/\r?\n/),r=Math.max(1,t-1),i=Math.min(n.length,t+1),s=String(i).length,y=[];for(let _=r;_<=i;_++){let m=_===t?">":" ";y.push(`${m} ${String(_).padStart(s," ")}. ${n[_-1]??""}`),_===t&&a&&a>0&&y.push(` ${" ".repeat(s)} ${" ".repeat(Math.max(0,a-1))}^`)}return y.join(`
962
- `)}function ze(e,t){if(!(!e||!t)){if(t[e.phase])return t[e.phase];if(e.phase?.startsWith("preHook"))return t.preHook;if(e.phase?.startsWith("postHook"))return t.postHook}}function te(e,t){let a=Be(e);if(a)return{message:a.message,statusCode:a.statusCode,errorPath:a.errorPath,code:a.code??(Number.isInteger(a.statusCode)?`HTTP_${a.statusCode}`:void 0),details:a.details};let n=Ge(e.stack),r=e.message||"Unknown error",i=n?`${r} (${n.phase}, line ${n.line})`:r,s=ze(n,t),y=n?We(s,n.line,n.column):void 0;return{message:i,statusCode:e.statusCode||null,details:{errorName:e.name||null,executionStage:e.executionStage||"runtime",...n?{...n,codeFrame:y}:{}}}}function X(e){return e?.message==="Script execution timed out."}function Y(e){return e?.message==="Isolate was disposed during execution due to memory limit"}function be(e){X(e)&&e?.code==null&&(e.code="ERR_SCRIPT_EXECUTION_TIMEOUT"),Y(e)&&e?.code==null&&(e.code="ERR_ISOLATE_MEMORY_LIMIT",e.details={outcome:"unknown_outcome",retryable:!1})}async function Z(e,t,a){be(t);let n=te(t,a);t.details&&(n.details={...n.details,...t.details});let r,i=O.get(e),s=E.get(e);if(i&&s&&!s.isolate.isDisposed)try{let y=await T(s.isolate,"JSON.stringify({logs: __logs, truncated: $ctx.$share.$logsTruncated === true})","extract-diagnostic-logs.js");r=JSON.parse(await y.run(i,{timeout:100}))}catch{}await F({type:"result",id:e,success:!1,diagnosticLogs:r,error:{...n,stack:t.stack,code:n.code??t.code}})}async function Xe(e){let{id:t,code:a,pkgSources:n,snapshot:r,memoryLimitMb:i,isolatePoolSize:s,tasksPerIsolate:y}=e,_={handler:e.sourceCode||a||""},m=n||[],v=Math.max(1,Math.trunc(Number(e.timeoutMs)||3e4)),R=Date.now()+v;j.set(t,R);let d=ke(a,m),u=ye(i,s,Math.max(1,Math.trunc(Number(y)||1)));u.taskIds.add(t),E.set(t,u);let k=u.isolate,b;try{b=await we(u,t,m,r,d,v,R)}catch(w){j.delete(t),E.delete(t),u.taskIds.delete(t),G(t),await Z(t,w,_),S.postMessage({type:"taskReleased",id:t});return}O.set(t,b);try{let w=`
963
+ `;function Se(e){return Pe.replace("%%PKG_SETUP%%",e)}se.exports={buildSetupCode:Se}});var{parentPort:Ce}=require("worker_threads"),S=Ce||{on(e,t){e==="message"&&process.on("message",t)},postMessage(e){process.send?.(e)}},ie=require("fs"),{fileURLToPath:Re}=require("url"),{createPackageRuntimeBridge:$e}=ae(),{buildSetupCode:Te}=oe(),q;try{q=require("isolated-vm")}catch(e){S.postMessage({type:"error",message:"isolated-vm not available: "+e.message}),process.exit(1)}var K=new Map,pe=0,O=new Map,E=new Map,j=new Map,U=$e({workerDir:__dirname,activeTaskContexts:O}),Me=500,Ne=5e3,ce=new WeakMap,_e=new WeakMap,W={created:0,reused:0,released:0,evicted:0,scrubFailed:0};function B(e){let t=j.get(e);return Math.max(1,Math.ceil((t??Date.now()+3e4)-Date.now()))}var A=null,le=0,ue=0,de=0;async function Ae(){let e=Date.now();if(e-ue<Ne)return de;if(ue=e,!A)return 0;let t=0;for(let s of A){let n=s?.isolate;if(!(!n||n.isDisposed))try{let r=await n.getHeapStatistics(),i=r.heap_size_limit||1,o=r.used_heap_size/i;o>t&&(t=o)}catch{}}return de=t,t}async function F(e){e.heapRatio=await Ae(),e.runnerRssBytes=process.memoryUsage().rss,e.contextStats=Ee(),S.postMessage(e)}function Ee(){return{...W,idle:0}}function ge(e,t,s){if(!A){let n=Math.max(1,Math.trunc(Number(t)||8));A=new Array(n).fill(null)}for(let n=0;n<A.length;n++){let r=(le+n)%A.length,i=A[r];if((!i||!i.isolate||i.isolate.isDisposed)&&(i={isolate:new q.Isolate({memoryLimit:e}),taskIds:new Set},A[r]=i),i.taskIds.size<s)return le=(r+1)%A.length,i}throw new Error("No isolate lane is available")}function z(e,t,s){for(let n of[...e.taskIds])n!==t&&(e.taskIds.delete(n),E.delete(n),O.delete(n),j.delete(n),U.cancelTask(n),V(n),S.postMessage({type:"result",id:n,success:!1,error:{message:"Isolate was disposed because a sibling task could not continue",code:"ERR_EXECUTOR_ISOLATE_LOST",details:{outcome:"unknown_outcome",retryable:!1,reason:s}}}),S.postMessage({type:"taskReleased",id:n}));try{e.isolate.dispose()}catch{}}function Oe(e){let t=E.get(e);if(!t){S.postMessage({type:"taskCancelled",id:e});return}z(t,e,"sibling_cancelled"),U.cancelTask(e),E.delete(e),O.delete(e),j.delete(e),t.taskIds.delete(e),V(e),S.postMessage({type:"taskCancelled",id:e})}function ye(e,t){t.taskIds.delete(e)&&(O.delete(e),E.delete(e),j.delete(e),V(e),S.postMessage({type:"taskReleased",id:e}))}async function T(e,t,s){let n=ce.get(e);n||(n=new Map,ce.set(e,n));let r=n.get(t);if(r)return r;let i;try{i=await e.compileScript(t,{filename:s})}catch(o){throw o&&typeof o=="object"&&(o.executionStage="compile"),o}if(n.set(t,i),n.size>Me){let o=n.keys().next().value;n.delete(o)}return i}S.on("message",async e=>{if(e.type==="execute")Ge(e).catch(async t=>{await F({type:"result",id:e.id,success:!1,error:{message:t.message,stack:t.stack}})});else if(e.type==="executeBatch")We(e).catch(async t=>{await F({type:"result",id:e.id,success:!1,error:{message:t.message,stack:t.stack}})});else if(e.type==="invokeRuntimeCallback")Je(e).catch(t=>{S.postMessage({type:"runtimeCallbackResult",callId:e.callId,error:t?.message||String(t)})});else if(e.type==="callResult"){let t=K.get(e.callId);t&&(K.delete(e.callId),t.resolve(e.result))}else if(e.type==="callError"){let t=K.get(e.callId);t&&(K.delete(e.callId),t.reject(new Error(e.error)))}else e.type==="cancelTask"&&Oe(e.id)});async function Je(e){let t=O.get(e.id);if(!t){S.postMessage({type:"runtimeCallbackResult",callId:e.callId,error:`Runtime callback context not found: ${e.id}`});return}let s=await t.evalClosure(`return __invokeRuntimeCallback(${JSON.stringify(e.callbackId)}, ${JSON.stringify(e.argsJson||"[]")});`,[],{arguments:{copy:!0},result:{promise:!0,copy:!0}}),n=JSON.parse(s);S.postMessage({type:"runtimeCallbackResult",callId:e.callId,...n})}function L(e,t,s){return new Promise((n,r)=>{let i=`cb_${++pe}`;K.set(i,{resolve:n,reject:r}),S.postMessage({type:t,id:e,callId:i,...s})})}function Ie(e,t,s){S.postMessage({type:t,id:e,callId:`f_${++pe}`,...s})}async function je(e,t){if(t?.method!=="stream")return L(e,"resCall",t);let s=JSON.parse(t.argsJson||"[]"),n=s[0],r=s[1]||{},i=n?.__pkgHandleArg;if(!i)return L(e,"resCall",t);let o=r.observer&&typeof r.observer=="object"?r.observer.__fnRef:null,y=r.transform&&typeof r.transform=="object"?r.transform.__fnRef:null,f=o||y?new TextDecoder("utf-8"):null;delete r.observer,delete r.transform;let w={...r};await L(e,"resCall",{method:"streamStart",argsJson:JSON.stringify([null,w])});let b=async(u,m,v)=>{if(!u)return;let k=O.get(e);if(!k)return;let P=await k.evalClosure(`return __invokeRuntimeCallback(${JSON.stringify(u)}, ${JSON.stringify(JSON.stringify([m,v]))});`,[],{arguments:{copy:!0},result:{promise:!0,copy:!0}}),C=JSON.parse(P);if(C?.error)throw new Error(C.error);if(C?.value?.__e!=="u")return C?.value},R=async(u,m)=>{if(o)try{await b(o,u,m)}catch{}},d=async(u,m,v)=>{let k=u;if(y){let C=await b(y,v,m);if(C===null)return;C!==void 0&&(k=Buffer.from(String(C)))}let P=Buffer.from(k);P.length!==0&&await L(e,"resCall",{method:"streamChunk",chunk:P.toString("base64")})};try{await U.streamPackageHandle(e,i,async m=>{let v="";try{v=f?f.decode(Buffer.from(m),{stream:!0}):""}catch{}await R(v,"chunk"),await d(m,"chunk",v)},[],B(e));let u="";try{u=f?f.decode():""}catch{}await R(u,"end"),await d("","end",u),await L(e,"resCall",{method:"streamEnd"})}catch(u){try{await L(e,"resCall",{method:"streamError",error:{message:u.message,stack:u.stack}})}catch{}throw await R("","error"),u}return JSON.stringify({__e:"u"})}function Ue(e){if(typeof e.sourceCode=="string"&&e.sourceCode.length>0)return e.sourceCode;let t=e.filePath;return!t&&typeof e.fileUrl=="string"&&e.fileUrl.startsWith("file://")&&(t=Re(e.fileUrl)),!t||!ie.existsSync(t)?null:ie.readFileSync(t,"utf8")}async function He(e,t,s){try{let n=Ue(s);if(!n)return null;let r=await e.compileModule(n,{filename:`pkg:${s.safeName}`});await r.instantiate(t,o=>{throw new Error(`Unresolved import in package ${s.safeName}: ${o}`)}),await r.evaluate({timeout:1e4});let i=await r.namespace.get("default");return i!==void 0&&i.typeof!=="undefined"?i.derefInto({release:!1}):r.namespace.derefInto({release:!1})}catch{return null}}function he(e,t){let s=new Set(t.map(f=>f.name)),n=new Set,r=String(e||""),i=/\b(?:\$ctx\.)?\$pkgs\s*\[\s*(['"`])([^'"`]+)\1\s*\]/g,o=/\brequire\s*\(\s*(['"`])([^'"`]+)\1\s*\)/g,y=/\b(?:\$ctx\.)?\$pkgs\.([A-Za-z_$][\w$]*)/g;for(let f of[i,o])for(let w of r.matchAll(f)){let b=w[2];s.has(b)&&n.add(b)}for(let f of r.matchAll(y)){let w=f[1];s.has(w)&&n.add(w)}return n}async function Le(e,t,s,n){let r=await e.createContext(),i=r.global;await i.set("global",i.derefInto());let o=[],y=[],f=new Map;for(let d of s){f.set(d.name,d);let u=n.has(d.name)?await He(e,r,d):null;u!==null?(await i.set(`__pkg_${d.safeName}`,u),o.push(d)):y.push(d)}U.setTaskPackages(t,f),await i.set("__callRef",new q.Reference(async(d,u,m)=>{let v=JSON.parse(m);if(u==="pkgCall")try{return JSON.stringify(await U.executePackageRuntimeCall(d,v))}catch(k){throw new Error(JSON.stringify({__userThrow:!0,message:k.message,code:k.code,details:k.details}))}return u==="resCall"?je(d,v):L(d,u,v)})),await i.set("__fireRef",new q.Reference((d,u,m)=>{let v=JSON.parse(m);Ie(d,u,v)}));let w=o.map(d=>`$pkgs[${JSON.stringify(d.name)}] = __pkg_${d.safeName};`).concat(y.map(d=>`$pkgs[${JSON.stringify(d.name)}] = __createPkgProxy(${JSON.stringify(d.name)}, []);`)).join(`
964
+ `),b=Te(w);return await(await T(e,b,"setup.js")).run(r,{timeout:B(t)}),_e.set(r,f),r}async function me(e,t,s,n,r,i,o){let y=e.isolate,f=await Le(y,t,s,r);W.created++,U.setTaskPackages(t,_e.get(f)||new Map);let w=f.global;return await w.set("__snapshot",new q.ExternalCopy(n).copyInto()),await w.set("__nextTaskId",t),await w.set("__nextTaskTimeoutMs",i),await w.set("__nextTaskDeadlineMs",o),await(await T(y,"__resetTask(__snapshot, __nextTaskId, __nextTaskTimeoutMs, __nextTaskDeadlineMs);","reset-task.js")).run(f,{timeout:B(t)}),f}async function ke(e,t){if(!(!t||e.isolate.isDisposed)){try{await(await T(e.isolate,"__cleanupTask();","cleanup-task.js")).run(t,{timeout:5e3})}catch{W.scrubFailed++;try{t.release()}catch{}return}try{t.release()}catch{}W.released++}}function Fe(e){try{let t=JSON.parse(e.message);if(t&&t.__userThrow)return{...t,message:t.message??e.message}}catch{}return null}var De=3,Be=["setup.js","extract.js","extract-error-ctx.js","set-status.js","populate-error.js"];function Ke(e){if(!e)return null;let t=e.split(`
965
+ `);for(let s of t){let n=s.match(/at\s+(.+\.js):(\d+):(\d+)/);if(!n)continue;let r=n[1].trim();if(Be.includes(r)||r!=="handler.js"&&!r.startsWith("preHook #")&&!r.startsWith("postHook #"))continue;let o=parseInt(n[2])-De;if(!(o<=0))return{line:o,column:parseInt(n[3]),phase:r.replace(".js","")}}return null}function qe(e,t,s){if(!e||!t)return;let n=String(e).split(/\r?\n/),r=Math.max(1,t-1),i=Math.min(n.length,t+1),o=String(i).length,y=[];for(let f=r;f<=i;f++){let w=f===t?">":" ";y.push(`${w} ${String(f).padStart(o," ")}. ${n[f-1]??""}`),f===t&&s&&s>0&&y.push(` ${" ".repeat(o)} ${" ".repeat(Math.max(0,s-1))}^`)}return y.join(`
966
+ `)}function Ve(e,t){if(!(!e||!t)){if(t[e.phase])return t[e.phase];if(e.phase?.startsWith("preHook"))return t.preHook;if(e.phase?.startsWith("postHook"))return t.postHook}}function te(e,t){let s=Fe(e);if(s)return{message:s.message,statusCode:s.statusCode,errorPath:s.errorPath,code:s.code??(Number.isInteger(s.statusCode)?`HTTP_${s.statusCode}`:void 0),details:s.details};let n=Ke(e.stack),r=e.message||"Unknown error",i=n?`${r} (${n.phase}, line ${n.line})`:r,o=Ve(n,t),y=n?qe(o,n.line,n.column):void 0;return{message:i,statusCode:e.statusCode||null,details:{errorName:e.name||null,executionStage:e.executionStage||"runtime",...n?{...n,codeFrame:y}:{}}}}function X(e){return e?.message==="Script execution timed out."}function Y(e){return e?.message==="Isolate was disposed during execution due to memory limit"}function we(e){X(e)&&e?.code==null&&(e.code="ERR_SCRIPT_EXECUTION_TIMEOUT"),Y(e)&&e?.code==null&&(e.code="ERR_ISOLATE_MEMORY_LIMIT",e.details={outcome:"unknown_outcome",retryable:!1})}async function Z(e,t,s){we(t);let n=te(t,s);t.details&&(n.details={...n.details,...t.details});let r,i=O.get(e),o=E.get(e);if(i&&o&&!o.isolate.isDisposed)try{let y=await T(o.isolate,"JSON.stringify({logs: __logs, truncated: $ctx.$share.$logsTruncated === true})","extract-diagnostic-logs.js");r=JSON.parse(await y.run(i,{timeout:100}))}catch{}await F({type:"result",id:e,success:!1,diagnosticLogs:r,error:{...n,stack:t.stack,code:n.code??t.code}})}async function Ge(e){let{id:t,code:s,pkgSources:n,snapshot:r,memoryLimitMb:i,isolatePoolSize:o,tasksPerIsolate:y}=e,f={handler:e.sourceCode||s||""},w=n||[],b=Math.max(1,Math.trunc(Number(e.timeoutMs)||3e4)),R=Date.now()+b;j.set(t,R);let d=he(s,w),u=ge(i,o,Math.max(1,Math.trunc(Number(y)||1)));u.taskIds.add(t),E.set(t,u);let m=u.isolate,v;try{v=await me(u,t,w,r,d,b,R)}catch(k){j.delete(t),E.delete(t),u.taskIds.delete(t),V(t),await Z(t,k,f),S.postMessage({type:"taskReleased",id:t});return}O.set(t,v);try{let k=`
963
967
  (async () => {
964
968
  "use strict";
965
- ${a}
969
+ ${s}
966
970
  })().then((__result) => __extractResult(__result, __result === undefined));
967
- `,C=await(await T(k,w,"handler.js")).run(b,{timeout:B(t),promise:!0}),D=JSON.parse(C);await F({type:"result",id:t,success:!0,...D})}catch(w){u.taskIds.has(t)&&(await Z(t,w,_),(X(w)||Y(w))&&z(u,t,"sibling_execution_failure"))}finally{await ve(u,b),he(t,u)}}async function Ye(e){let{id:t,codeBlocks:a,pkgSources:n,snapshot:r,memoryLimitMb:i,isolatePoolSize:s,tasksPerIsolate:y}=e,_=n||[],m=Math.max(1,Math.trunc(Number(e.timeoutMs)||3e4)),v=Date.now()+m;j.set(t,v);let R=ke((a||[]).map(p=>p.code||"").join(`
968
- `),_),d=ye(i,s,Math.max(1,Math.trunc(Number(y)||1)));d.taskIds.add(t),E.set(t,d);let u=d.isolate,k;try{k=await we(d,t,_,r,R,m,v)}catch(p){j.delete(t),E.delete(t),d.taskIds.delete(t),G(t),await Z(t,p),S.postMessage({type:"taskReleased",id:t});return}O.set(t,k);let b=[],w=[],P={},C=0,D=0;for(let p of a){let H=p.type||"handler",g=p.sourceCode||p.code||"";H==="postHook"?(D++,P[`postHook #${D}`]=g,P.postHook=g,w.push(p)):(H==="handler"?P.handler=g:(C++,P[`${H} #${C}`]=g,P.preHook=g),b.push(p))}try{let p=null;for(let g=0;g<b.length;g++){let x=b[g],$=x.type||"handler",l=$==="handler"?"handler":`${$} #${g+1}`,o;$==="preHook"?o=`
971
+ `,C=await(await T(m,k,"handler.js")).run(v,{timeout:B(t),promise:!0}),D=JSON.parse(C);await F({type:"result",id:t,success:!0,...D})}catch(k){u.taskIds.has(t)&&(await Z(t,k,f),(X(k)||Y(k))&&z(u,t,"sibling_execution_failure"))}finally{await ke(u,v),ye(t,u)}}async function We(e){let{id:t,codeBlocks:s,pkgSources:n,snapshot:r,memoryLimitMb:i,isolatePoolSize:o,tasksPerIsolate:y}=e,f=n||[],w=Math.max(1,Math.trunc(Number(e.timeoutMs)||3e4)),b=Date.now()+w;j.set(t,b);let R=he((s||[]).map(_=>_.code||"").join(`
972
+ `),f),d=ge(i,o,Math.max(1,Math.trunc(Number(y)||1)));d.taskIds.add(t),E.set(t,d);let u=d.isolate,m;try{m=await me(d,t,f,r,R,w,b)}catch(_){j.delete(t),E.delete(t),d.taskIds.delete(t),V(t),await Z(t,_),S.postMessage({type:"taskReleased",id:t});return}O.set(t,m);let v=[],k=[],P={},C=0,D=0;for(let _ of s){let H=_.type||"handler",g=_.sourceCode||_.code||"";H==="postHook"?(D++,P[`postHook #${D}`]=g,P.postHook=g,k.push(_)):(H==="handler"?P.handler=g:(C++,P[`${H} #${C}`]=g,P.preHook=g),v.push(_))}try{let _=null;for(let g=0;g<v.length;g++){let x=v[g],$=x.type||"handler",l=$==="handler"?"handler":`${$} #${g+1}`,a;$==="preHook"?a=`
969
973
  (async () => {
970
974
  "use strict";
971
975
  ${x.code}
972
976
  })().then((__r) => {
973
977
  if (__r !== undefined) return JSON.stringify({ __shortCircuit: true, value: __r });
974
978
  return JSON.stringify({ __shortCircuit: false });
975
- });`:o=`
979
+ });`:a=`
976
980
  (async () => {
977
981
  "use strict";
978
982
  ${x.code}
979
983
  })().then((__r) => {
980
984
  $ctx.$data = __r;
981
985
  return "__handler_done__";
982
- });`;try{let f=await(await T(u,o,`${l}.js`)).run(k,{timeout:B(t),promise:!0});if($==="preHook"&&typeof f=="string"){let h=JSON.parse(f);if(h.__shortCircuit){let N=await fe(u,k,h.value);await F({type:"result",id:t,success:!0,...N,shortCircuit:!0});return}}}catch(c){p=c;break}}if(!p&&w.length>0&&await(await T(u,'$ctx.$statusCode = 200; "__status_set__";',"set-status.js")).run(k,{timeout:5e3}),p&&w.length>0){let g=te(p,P),x={message:g.message||"Unknown error",name:p.constructor?.name||"Error",stack:p.stack||"",statusCode:g.statusCode||500,details:g.details||{},timestamp:new Date().toISOString()},$=`
986
+ });`;try{let p=await(await T(u,a,`${l}.js`)).run(m,{timeout:B(t),promise:!0});if($==="preHook"&&typeof p=="string"){let h=JSON.parse(p);if(h.__shortCircuit){let M=await fe(u,m,h.value);await F({type:"result",id:t,success:!0,...M,shortCircuit:!0});return}}}catch(c){_=c;break}}if(!_&&k.length>0&&await(await T(u,'$ctx.$statusCode = 200; "__status_set__";',"set-status.js")).run(m,{timeout:5e3}),_&&k.length>0){let g=te(_,P),x={message:g.message||"Unknown error",name:_.constructor?.name||"Error",stack:_.stack||"",statusCode:g.statusCode||500,details:g.details||{},timestamp:new Date().toISOString()},$=`
983
987
  $ctx.$error = ${JSON.stringify(x)};
984
988
  $ctx.$data = null;
985
989
  $ctx.$statusCode = ${x.statusCode};
@@ -993,11 +997,11 @@ if ($ctx.$api) {
993
997
  timestamp: ${JSON.stringify(x.timestamp)},
994
998
  };
995
999
  }
996
- "__error_populated__";`;await(await u.compileScript($,{filename:"populate-error.js"})).run(k,{timeout:5e3})}for(let g=0;g<w.length;g++){let x=w[g],$=`postHook #${g+1}`,l=`
1000
+ "__error_populated__";`;await(await u.compileScript($,{filename:"populate-error.js"})).run(m,{timeout:5e3})}for(let g=0;g<k.length;g++){let x=k[g],$=`postHook #${g+1}`,l=`
997
1001
  (async () => {
998
1002
  "use strict";
999
1003
  ${x.code}
1000
1004
  })().then((__r) => {
1001
1005
  if (__r !== undefined) $ctx.$data = __r;
1002
1006
  return "__posthook_done__";
1003
- });`;try{await(await T(u,l,`${$}.js`)).run(k,{timeout:B(t),promise:!0})}catch(o){S.postMessage({type:"executionError",id:t,sourceKind:"postHook",scriptId:x.scriptId,error:{message:o.message,stack:o.stack,code:o.code}})}}if(p){be(p);let g=te(p,P);p.details&&(g.details={...g.details,...p.details});let x;try{let o=await(await T(u,"(async () => JSON.stringify(await __extractCtxChanges()))()","extract-error-ctx.js")).run(k,{timeout:5e3,promise:!0});x=JSON.parse(o)}catch{}await F({type:"result",id:t,success:!1,error:{message:g.message,statusCode:g.statusCode,errorPath:g.errorPath,stack:p.stack,code:g.code??p.code,details:g.details},ctxChanges:x}),(X(p)||Y(p))&&z(d,t,"sibling_execution_failure");return}let H=await fe(u,k);await F({type:"result",id:t,success:!0,...H})}catch(p){d.taskIds.has(t)&&(await Z(t,p),(X(p)||Y(p))&&z(d,t,"sibling_execution_failure"))}finally{await ve(d,k),he(t,d)}}function G(e){U.cleanupTaskPackages(e)}function Ze(){U.shutdownPackageRuntime()}process.on("exit",Ze);async function fe(e,t,a){if(a!==void 0){let s=`__extractResult(${JSON.stringify(a)}, false)`,_=await(await e.compileScript(s,{filename:"extract.js"})).run(t,{timeout:5e3,promise:!0});return JSON.parse(_)}let i=await(await T(e,"__extractResult($ctx.$data, $ctx.$data === undefined)","extract.js")).run(t,{timeout:5e3,promise:!0});return JSON.parse(i)}
1007
+ });`;try{await(await T(u,l,`${$}.js`)).run(m,{timeout:B(t),promise:!0})}catch(a){S.postMessage({type:"executionError",id:t,sourceKind:"postHook",scriptId:x.scriptId,error:{message:a.message,stack:a.stack,code:a.code}})}}if(_){we(_);let g=te(_,P);_.details&&(g.details={...g.details,..._.details});let x;try{let a=await(await T(u,"(async () => JSON.stringify(await __extractCtxChanges()))()","extract-error-ctx.js")).run(m,{timeout:5e3,promise:!0});x=JSON.parse(a)}catch{}await F({type:"result",id:t,success:!1,error:{message:g.message,statusCode:g.statusCode,errorPath:g.errorPath,stack:_.stack,code:g.code??_.code,details:g.details},ctxChanges:x}),(X(_)||Y(_))&&z(d,t,"sibling_execution_failure");return}let H=await fe(u,m);await F({type:"result",id:t,success:!0,...H})}catch(_){d.taskIds.has(t)&&(await Z(t,_),(X(_)||Y(_))&&z(d,t,"sibling_execution_failure"))}finally{await ke(d,m),ye(t,d)}}function V(e){U.cleanupTaskPackages(e)}function ze(){U.shutdownPackageRuntime()}process.on("exit",ze);async function fe(e,t,s){if(s!==void 0){let o=`__extractResult(${JSON.stringify(s)}, false)`,f=await(await e.compileScript(o,{filename:"extract.js"})).run(t,{timeout:5e3,promise:!0});return JSON.parse(f)}let i=await(await T(e,"__extractResult($ctx.$data, $ctx.$data === undefined)","extract.js")).run(t,{timeout:5e3,promise:!0});return JSON.parse(i)}
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "name": "@enfyra/kernel",
3
- "version": "1.1.60",
3
+ "version": "1.1.62",
4
4
  "source": "bundled-compiled-kernel"
5
5
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@enfyra/kernel",
3
- "version": "1.1.60",
3
+ "version": "1.1.62",
4
4
  "description": "Closed-distribution Enfyra kernel runtime",
5
5
  "license": "Elastic-2.0",
6
6
  "packageManager": "yarn@4.17.0",