@claudeye/linux-x64 1.0.4-beta.1 → 1.0.4-beta.11

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.
Files changed (148) hide show
  1. package/assets/standalone/.next/BUILD_ID +1 -1
  2. package/assets/standalone/.next/build-manifest.json +2 -2
  3. package/assets/standalone/.next/prerender-manifest.json +3 -3
  4. package/assets/standalone/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  5. package/assets/standalone/.next/server/app/_global-error.html +2 -2
  6. package/assets/standalone/.next/server/app/_global-error.rsc +7 -7
  7. package/assets/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +2 -2
  8. package/assets/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +7 -7
  9. package/assets/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +3 -3
  10. package/assets/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +3 -3
  11. package/assets/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  12. package/assets/standalone/.next/server/app/_not-found/page/server-reference-manifest.json +1 -1
  13. package/assets/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  14. package/assets/standalone/.next/server/app/_not-found.html +2 -2
  15. package/assets/standalone/.next/server/app/_not-found.rsc +14 -14
  16. package/assets/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +14 -14
  17. package/assets/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +4 -4
  18. package/assets/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +9 -9
  19. package/assets/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
  20. package/assets/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +3 -3
  21. package/assets/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  22. package/assets/standalone/.next/server/app/api/completed-history/route.js +1 -1
  23. package/assets/standalone/.next/server/app/api/queue-item/route.js +1 -1
  24. package/assets/standalone/.next/server/app/api/queue-status/route.js +1 -1
  25. package/assets/standalone/.next/server/app/dashboard/[viewName]/page/server-reference-manifest.json +4 -4
  26. package/assets/standalone/.next/server/app/dashboard/[viewName]/page_client-reference-manifest.js +1 -1
  27. package/assets/standalone/.next/server/app/dashboard/page/server-reference-manifest.json +4 -4
  28. package/assets/standalone/.next/server/app/dashboard/page_client-reference-manifest.js +1 -1
  29. package/assets/standalone/.next/server/app/login/page/server-reference-manifest.json +2 -2
  30. package/assets/standalone/.next/server/app/login/page_client-reference-manifest.js +1 -1
  31. package/assets/standalone/.next/server/app/login.html +2 -2
  32. package/assets/standalone/.next/server/app/login.rsc +15 -15
  33. package/assets/standalone/.next/server/app/login.segments/_full.segment.rsc +15 -15
  34. package/assets/standalone/.next/server/app/login.segments/_head.segment.rsc +4 -4
  35. package/assets/standalone/.next/server/app/login.segments/_index.segment.rsc +9 -9
  36. package/assets/standalone/.next/server/app/login.segments/_tree.segment.rsc +2 -2
  37. package/assets/standalone/.next/server/app/login.segments/login/__PAGE__.segment.rsc +4 -4
  38. package/assets/standalone/.next/server/app/login.segments/login.segment.rsc +3 -3
  39. package/assets/standalone/.next/server/app/page/server-reference-manifest.json +1 -1
  40. package/assets/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  41. package/assets/standalone/.next/server/app/project/[name]/page/server-reference-manifest.json +1 -1
  42. package/assets/standalone/.next/server/app/project/[name]/page_client-reference-manifest.js +1 -1
  43. package/assets/standalone/.next/server/app/project/[name]/session/[sessionId]/page/react-loadable-manifest.json +2 -2
  44. package/assets/standalone/.next/server/app/project/[name]/session/[sessionId]/page/server-reference-manifest.json +8 -8
  45. package/assets/standalone/.next/server/app/project/[name]/session/[sessionId]/page.js +2 -2
  46. package/assets/standalone/.next/server/app/project/[name]/session/[sessionId]/page_client-reference-manifest.js +1 -1
  47. package/assets/standalone/.next/server/app/queue/page/server-reference-manifest.json +3 -3
  48. package/assets/standalone/.next/server/app/queue/page.js +2 -2
  49. package/assets/standalone/.next/server/app/queue/page_client-reference-manifest.js +1 -1
  50. package/assets/standalone/.next/server/chunks/{[externals]_next_dist_db0236a7._.js → [externals]__06cd15c5._.js} +2 -2
  51. package/assets/standalone/.next/server/chunks/[externals]__10373a08._.js +3 -0
  52. package/assets/standalone/.next/server/chunks/[externals]__d78bcb54._.js +3 -0
  53. package/assets/standalone/.next/server/chunks/[externals]_node:os_276398f1._.js +3 -0
  54. package/assets/standalone/.next/server/chunks/[root-of-the-server]__067f11b8._.js +3 -0
  55. package/assets/standalone/.next/server/chunks/[root-of-the-server]__22ffcb4e._.js +3 -0
  56. package/assets/standalone/.next/server/chunks/{[root-of-the-server]__f9952ff1._.js → [root-of-the-server]__292809cf._.js} +1 -1
  57. package/assets/standalone/.next/server/chunks/{[root-of-the-server]__bf0c3d33._.js → [root-of-the-server]__3c3ad1da._.js} +4 -4
  58. package/assets/standalone/.next/server/chunks/[root-of-the-server]__43c4e0bc._.js +3 -0
  59. package/assets/standalone/.next/server/chunks/{[root-of-the-server]__49f23eb6._.js → [root-of-the-server]__7c44135a._.js} +2 -2
  60. package/assets/standalone/.next/server/chunks/[root-of-the-server]__939bf5b3._.js +3 -0
  61. package/assets/standalone/.next/server/chunks/[root-of-the-server]__93f96cbe._.js +1 -1
  62. package/assets/standalone/.next/server/chunks/[root-of-the-server]__bd194a73._.js +3 -0
  63. package/assets/standalone/.next/server/chunks/[root-of-the-server]__ca12b24d._.js +3 -0
  64. package/assets/standalone/.next/server/chunks/[root-of-the-server]__d7355d04._.js +1 -1
  65. package/assets/standalone/.next/server/chunks/{[root-of-the-server]__4c863ef8._.js → [root-of-the-server]__dcb3f873._.js} +1 -1
  66. package/assets/standalone/.next/server/chunks/[root-of-the-server]__e3e9ab09._.js +4 -0
  67. package/assets/standalone/.next/server/chunks/[root-of-the-server]__f26a70d1._.js +3 -0
  68. package/assets/standalone/.next/server/chunks/_3f3c09bf._.js +2 -2
  69. package/assets/standalone/.next/server/chunks/_5336fde9._.js +3 -0
  70. package/assets/standalone/.next/server/chunks/_6a9d92e6._.js +2 -2
  71. package/assets/standalone/.next/server/chunks/_7cb7a702._.js +2 -2
  72. package/assets/standalone/.next/server/chunks/_7e07bbd9._.js +1 -1
  73. package/assets/standalone/.next/server/chunks/_8f856fad._.js +2 -2
  74. package/assets/standalone/.next/server/chunks/{_63727770._.js → _b7316450._.js} +1 -1
  75. package/assets/standalone/.next/server/chunks/_b8adaa37._.js +2 -2
  76. package/assets/standalone/.next/server/chunks/lib_6cff0ca5._.js +2 -2
  77. package/assets/standalone/.next/server/chunks/lib_74f62736._.js +2 -2
  78. package/assets/standalone/.next/server/chunks/lib_eval-queue_ts_32d171f8._.js +1 -1
  79. package/assets/standalone/.next/server/chunks/lib_eval-queue_ts_642b3543._.js +1 -1
  80. package/assets/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_7a66d362.js +1 -1
  81. package/assets/standalone/.next/server/chunks/node_modules_posthog-node_dist_entrypoints_index_node_mjs_05ab10df._.js +3 -0
  82. package/assets/standalone/.next/server/chunks/node_modules_posthog-node_dist_entrypoints_index_node_mjs_20debb74._.js +3 -0
  83. package/assets/standalone/.next/server/chunks/package_json_4b1b4d6f._.js +3 -0
  84. package/assets/standalone/.next/server/chunks/ssr/[externals]__10373a08._.js +3 -0
  85. package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__0b2008e0._.js +1 -1
  86. package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__4532b0f3._.js +1 -1
  87. package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__6a70107b._.js +1 -1
  88. package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__6b650af8._.js +1 -1
  89. package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__7595cbf0._.js +1 -1
  90. package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__798114ce._.js +1 -1
  91. package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__9833974c._.js +1 -1
  92. package/assets/standalone/.next/server/chunks/ssr/{_fca518aa._.js → [root-of-the-server]__acea31a9._.js} +3 -3
  93. package/assets/standalone/.next/server/chunks/ssr/{_aa498e4a._.js → [root-of-the-server]__c3591792._.js} +3 -3
  94. package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__cf373db0._.js +1 -1
  95. package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__da7d7793._.js +1 -1
  96. package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__eee26df8._.js +1 -1
  97. package/assets/standalone/.next/server/chunks/ssr/_14858238._.js +1 -1
  98. package/assets/standalone/.next/server/chunks/ssr/_19a3e694._.js +2 -2
  99. package/assets/standalone/.next/server/chunks/ssr/_1d335924._.js +1 -1
  100. package/assets/standalone/.next/server/chunks/ssr/_3dacef09._.js +1 -1
  101. package/assets/standalone/.next/server/chunks/ssr/_617143fc._.js +2 -2
  102. package/assets/standalone/.next/server/chunks/ssr/_76ab933f._.js +1 -1
  103. package/assets/standalone/.next/server/chunks/ssr/_7ae321cd._.js +2 -2
  104. package/assets/standalone/.next/server/chunks/ssr/_87e025a1._.js +1 -1
  105. package/assets/standalone/.next/server/chunks/ssr/_986c0cdb._.js +2 -2
  106. package/assets/standalone/.next/server/chunks/ssr/_c9400c33._.js +2 -2
  107. package/assets/standalone/.next/server/chunks/ssr/_d7159840._.js +1 -1
  108. package/assets/standalone/.next/server/chunks/ssr/_fa9c2bed._.js +2 -2
  109. package/assets/standalone/.next/server/chunks/ssr/app_actions_compute-dashboard_ts_fc151dbb._.js +1 -1
  110. package/assets/standalone/.next/server/chunks/ssr/app_login_page_tsx_ccc0019b._.js +1 -1
  111. package/assets/standalone/.next/server/chunks/ssr/app_queue_queue-client_tsx_45f040f7._.js +1 -1
  112. package/assets/standalone/.next/server/chunks/ssr/lib_eval-queue_ts_e2258485._.js +1 -1
  113. package/assets/standalone/.next/server/chunks/ssr/node_modules_next_dist_274ac3eb._.js +1 -1
  114. package/assets/standalone/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_forbidden_45780354.js +1 -1
  115. package/assets/standalone/.next/server/chunks/ssr/node_modules_posthog-node_dist_entrypoints_index_node_mjs_8222e100._.js +3 -0
  116. package/assets/standalone/.next/server/instrumentation.js +1 -1
  117. package/assets/standalone/.next/server/middleware.js +2 -2
  118. package/assets/standalone/.next/server/pages/404.html +2 -2
  119. package/assets/standalone/.next/server/pages/500.html +2 -2
  120. package/assets/standalone/.next/server/server-reference-manifest.js +1 -1
  121. package/assets/standalone/.next/server/server-reference-manifest.json +15 -15
  122. package/assets/standalone/.next/static/chunks/{98ef6309c816722d.css → 14b2a22c2d5f76c5.css} +1 -1
  123. package/assets/standalone/.next/static/chunks/{d2be314c3ece3fbe.js → 2b423cf30d3964a3.js} +1 -1
  124. package/assets/standalone/.next/static/chunks/{17ab7009dbe74649.js → 51e41da5cb4bbf7c.js} +1 -1
  125. package/assets/standalone/.next/static/chunks/{97c295191089a1c2.js → 5920eabcfc97a878.js} +1 -1
  126. package/assets/standalone/.next/static/chunks/790fdc8462a1db82.js +4 -0
  127. package/assets/standalone/.next/static/chunks/{bb214e98e0c9e4e5.js → 7a9c1a474c53064a.js} +1 -1
  128. package/assets/standalone/.next/static/chunks/{95a1eab2b0a3fe06.js → bef14d38eadf08f3.js} +3 -3
  129. package/assets/standalone/.next/static/chunks/ccaae64f6a85d659.js +1 -0
  130. package/assets/standalone/.next/static/chunks/{386b191cb182c385.js → efcf5383c53c958a.js} +1 -1
  131. package/assets/standalone/README.md +22 -0
  132. package/assets/standalone/instrumentation.node.ts +54 -0
  133. package/assets/standalone/package.json +16 -4
  134. package/bin/claudeye +0 -0
  135. package/package.json +3 -2
  136. package/assets/public/exospheresmall-dark.png +0 -0
  137. package/assets/public/exospheresmall.png +0 -0
  138. package/assets/standalone/.next/server/chunks/[root-of-the-server]__05f07ba2._.js +0 -3
  139. package/assets/standalone/.next/server/chunks/[root-of-the-server]__18cae1da._.js +0 -4
  140. package/assets/standalone/.next/server/chunks/[root-of-the-server]__5c05256a._.js +0 -3
  141. package/assets/standalone/.next/server/chunks/[root-of-the-server]__b87517c1._.js +0 -3
  142. package/assets/standalone/.next/server/chunks/[root-of-the-server]__d2d53e39._.js +0 -3
  143. package/assets/standalone/.next/server/chunks/_5ab69e50._.js +0 -3
  144. package/assets/standalone/.next/static/chunks/11394126217c190c.js +0 -4
  145. package/assets/standalone/.next/static/chunks/9f273c6df6390f71.js +0 -1
  146. /package/assets/standalone/.next/static/{ccot-zGP2vbRELjP3CnAm → AZ152FxJ338VIzoGzrSeI}/_buildManifest.js +0 -0
  147. /package/assets/standalone/.next/static/{ccot-zGP2vbRELjP3CnAm → AZ152FxJ338VIzoGzrSeI}/_clientMiddlewareManifest.json +0 -0
  148. /package/assets/standalone/.next/static/{ccot-zGP2vbRELjP3CnAm → AZ152FxJ338VIzoGzrSeI}/_ssgManifest.js +0 -0
@@ -1,7 +1,7 @@
1
- module.exports=[44967,e=>{"use strict";function t(e){function t(){let t=globalThis;return t[e]||(t[e]=[]),t[e]}return{register(e){let n=t(),a=n.findIndex(t=>t.name===e.name);a>=0?n[a]=e:n.push(e)},getAll:()=>t(),getSessionScoped:()=>t().filter(e=>"session"===e.scope||"both"===e.scope),getSubagentScoped:e=>t().filter(t=>("subagent"===t.scope||"both"===t.scope)&&(!t.subagentType||!e||t.subagentType===e)),hasSubagent:()=>t().some(e=>"subagent"===e.scope||"both"===e.scope),has:()=>t().length>0,clear(){globalThis[e]=[]}}}e.s(["createScopedRegistry",()=>t])},42315,(e,t,n)=>{"use strict";t.exports=e.r(18622)},40911,e=>{"use strict";let t={info:0,warn:1,error:2};function n(e){return t[e]>=t.warn}function a(e){return`[claudeye ${new Date().toISOString()}] ${e}`}function s(e,t){n("warn")&&(void 0!==t?console.warn(a("WARN"),e,t):console.warn(a("WARN"),e))}function i(e,t){void 0!==t?console.error(a("ERROR"),e,t):console.error(a("ERROR"),e)}function r(e,t,s){if(!n("info"))return;let i=[`user=${e}`,`action=${t}`];s&&i.push(s),console.log(a("ACTIVITY"),i.join(" "))}async function o(){try{let{cookies:t}=await e.A(6878),n=await t(),a=n.get("claudeye_session")?.value;if(!a)return"anonymous";let s=process.env.CLAUDEYE_AUTH_SECRET??"",{verifySessionCookie:i}=await e.A(26404);return await i(a,s)??"anonymous"}catch{return"anonymous"}}e.s(["getRequestUsername",()=>o,"logActivity",()=>r,"logError",()=>i,"logWarn",()=>s])},81580,e=>{"use strict";var t=e.i(46786),n=e.i(14747);function a(){let e=process.env.CLAUDE_PROJECTS_PATH;return e||(0,n.join)((0,t.homedir)(),".claude","projects")}e.s(["getClaudeProjectsPath",()=>a])},54214,83534,41444,67405,e=>{"use strict";var t=e.i(24868),n=e.i(14747),a=e.i(81580);async function s(e,a,s,i){let r=`agent-${i}.jsonl`;for(let i of[(0,n.join)(e,a,r),(0,n.join)(e,a,s,r),(0,n.join)(e,a,s,"subagents",r)])if(!(0,n.relative)(e,i).startsWith(".."))try{return await (0,t.access)(i),i}catch(e){if("ENOENT"!==e.code)continue}return null}function i(e,t,n){let a=new Map,s=new Map,i=n?.maxSize;return async(...n)=>{let r=JSON.stringify(n),o=a.get(r);if(o&&Date.now()<o.expiry)return i&&(a.delete(r),a.set(r,o)),o.data;let l=s.get(r);if(l)return l;let u=e(...n).then(e=>{if(s.delete(r),i&&a.size>=i){let e=a.keys().next().value;a.delete(e)}return a.set(r,{data:e,expiry:Date.now()+1e3*t}),e},e=>{throw s.delete(r),e});return s.set(r,u),u}}function r(e){return new Intl.DateTimeFormat("en-US",{month:"short",day:"numeric",year:"numeric",hour:"numeric",minute:"2-digit",hour12:!0}).format(e)}function o(e){if(e<1e3)return`${e}ms`;let t=e/1e3;if(t<60)return`${t.toFixed(1)}s`;let n=Math.floor(t/60);if(n>=60){let e=Math.floor(n/60);return`${e}h ${n%60}m`}let a=(t%60).toFixed(0);return`${n}m ${a}s`}function l(e){let t=r(e),n=e.getMilliseconds().toString().padStart(3,"0");return`${t}.${n}`}function u(e,t,n,a){return{_source:a,uuid:e.uuid||"",parentUuid:e.parentUuid??null,timestamp:t,timestampMs:n.getTime(),timestampFormatted:l(n)}}async function c(e,t){let n=e.split("\n").filter(e=>""!==e.trim()),a=new Map,s=[],i=[],r=new Set,c=!1;for(let e=0;e<n.length;e++){let o;e>0&&e%200==0&&await new Promise(e=>setImmediate(e));let l=n[e];try{o=JSON.parse(l)}catch{continue}let f={...o,_source:t};i.push(f);let h=o.type,m=o.timestamp;if(!m)continue;let d=new Date(m),p=d.getTime();if("user"===h){let e=o.message;if(Array.isArray(e?.content)){let t=e.content;if(t.some(e=>"tool_result"===e.type)){let e=o.toolUseResult,n="string"==typeof e?.agentId?e.agentId:void 0;for(let e of(n&&/^[a-f0-9]+$/.test(n)&&r.add(n),t)){if("tool_result"!==e.type)continue;let t=e.tool_use_id;if(!t)continue;let{text:s,images:i}=function(e){let t=e.content;if("string"==typeof t)return{text:t};if(Array.isArray(t)){let e=t.filter(e=>"text"===e.type).map(e=>e.text),n=t.filter(e=>"image"===e.type).map(e=>{let t=e.source;return{base64:t.data,mediaType:t.media_type}}).filter(e=>e.base64&&e.mediaType);return{text:e.length>0?e.join("\n"):void 0,images:n.length>0?n:void 0}}return{}}(e);a.set(t,{timestamp:m,timestampMs:p,content:s,images:i,agentId:n})}continue}}let n="string"==typeof e?.content?e.content:"";s.push({type:"user",...u(o,m,d,t),message:{role:"user",content:n}});continue}if("assistant"===h){let e=o.message,n=[];if(Array.isArray(e?.content)&&(n=e.content.filter(e=>["text","tool_use","thinking"].includes(e.type)).map(e=>{if("text"===e.type)return{type:"text",text:e.text};if("tool_use"===e.type){let t=e.input;return{type:"tool_use",id:e.id,name:e.name,input:e.input??{},..."Task"===e.name&&t?{subagentType:t.subagent_type,subagentDescription:t.description}:{}}}return{type:"thinking",thinking:e.thinking,signature:e.signature}})),0===n.length)continue;s.push({type:"assistant",...u(o,m,d,t),message:{role:"assistant",content:n,model:e?.model}});continue}if("file-history-snapshot"===h||"progress"===h||"system"===h){s.push({type:h,...u(o,m,d,t),raw:{...o}});continue}if("queue-operation"===h){let e=c?"Session Resumed":"Session Started";c=!0,s.push({type:"queue-operation",...u(o,m,d,t),label:e});continue}}let f=0;for(let e of s)if("assistant"===e.type)for(let t of(++f%200==0&&await new Promise(e=>setImmediate(e)),e.message.content)){if("tool_use"!==t.type)continue;let n=a.get(t.id);if(!n)continue;let s=new Date(n.timestamp),i=n.timestampMs-e.timestampMs;t.result={timestamp:n.timestamp,timestampFormatted:l(s),content:n.content,images:n.images,durationMs:i,durationFormatted:o(i)},n.agentId&&(t.subagentId=n.agentId)}return s.length>500&&await new Promise(e=>setImmediate(e)),s.sort((e,t)=>e.timestampMs-t.timestampMs),{entries:s,rawLines:i,subagentIds:Array.from(r)}}async function f(e,i){let r=(0,a.getClaudeProjectsPath)(),o=(0,n.join)(r,e,`${i}.jsonl`),l=await (0,t.readFile)(o,"utf-8"),{entries:u,rawLines:f,subagentIds:h}=await c(l,"session");if(0===h.length)return{entries:u,rawLines:f,subagentIds:[]};let m=await Promise.allSettled(h.map(async n=>{let a=`agent-${n}`,o=await s(r,e,i,n);if(!o)return null;let l=await (0,t.readFile)(o,"utf-8"),{entries:u,rawLines:f}=await c(l,a);return{entries:u,rawLines:f}})),d=[...u],p=[...f];for(let e of m)"fulfilled"===e.status&&e.value&&(d.push(...e.value.entries),p.push(...e.value.rawLines));return d.length>500&&await new Promise(e=>setImmediate(e)),d.sort((e,t)=>e.timestampMs-t.timestampMs),{entries:d,rawLines:p,subagentIds:h}}e.s(["runtimeCache",()=>i],83534),e.s(["formatDate",()=>r],41444),e.s(["formatDuration",()=>o],67405);let h=i((e,t)=>f(e,t),60,{maxSize:50});e.s(["getCachedSessionLog",0,h],54214)},28753,e=>{"use strict";var t=e.i(24868),n=e.i(14747),a=e.i(92509);let s="__CLAUDEYE_LOADING_EVALS__",i=!1;async function r(e){try{return await (0,t.access)(e),!0}catch{return!1}}async function o(){let e=process.env.CLAUDEYE_DIST_PATH;if(e){let t=(0,n.resolve)(e,"index.js");if(await r(t))return t}for(let e of[(0,n.resolve)(process.cwd(),"dist","index.js"),(0,n.resolve)(process.cwd(),"node_modules","claudeye","dist","index.js")])if(await r(e))return e;return null}let l=/(?:import\s+(?:[\s\S]*?\s+from\s+)?|export\s+(?:[\s\S]*?\s+from\s+))(['"])(\.\.?\/[^'"]+)\1/g,u=/require\s*\(\s*(['"])(\.\.?\/[^'"]+)\1\s*\)/g,c=".__claudeye_tmp__.mjs";async function f(e,t){let a=(0,n.resolve)(e,t);for(let e of[a,`${a}.js`,`${a}.mjs`,`${a}.ts`,(0,n.resolve)(a,"index.js")])if(await r(e))return e;return null}async function h(e,n){let s=e+".__claudeye_esm_shim__.mjs",i=`import _cjs from '${n}';
1
+ module.exports=[44967,e=>{"use strict";function t(e){function t(){let t=globalThis;return t[e]||(t[e]=[]),t[e]}return{register(e){let n=t(),a=n.findIndex(t=>t.name===e.name);a>=0?n[a]=e:n.push(e)},getAll:()=>t(),getSessionScoped:()=>t().filter(e=>"session"===e.scope||"both"===e.scope),getSubagentScoped:e=>t().filter(t=>("subagent"===t.scope||"both"===t.scope)&&(!t.subagentType||!e||t.subagentType===e)),hasSubagent:()=>t().some(e=>"subagent"===e.scope||"both"===e.scope),has:()=>t().length>0,clear(){globalThis[e]=[]}}}e.s(["createScopedRegistry",()=>t])},42315,(e,t,n)=>{"use strict";t.exports=e.r(18622)},40911,e=>{"use strict";let t={info:0,warn:1,error:2};function n(e){return t[e]>=t.warn}function a(e){return`[claudeye ${new Date().toISOString()}] ${e}`}function s(e,t){n("warn")&&(void 0!==t?console.warn(a("WARN"),e,t):console.warn(a("WARN"),e))}function i(e,t){void 0!==t?console.error(a("ERROR"),e,t):console.error(a("ERROR"),e)}function r(e,t,s){if(!n("info"))return;let i=[`user=${e}`,`action=${t}`];s&&i.push(s),console.log(a("ACTIVITY"),i.join(" "))}async function o(){try{let{cookies:t}=await e.A(6878),n=await t(),a=n.get("claudeye_session")?.value;if(!a)return"anonymous";let s=process.env.CLAUDEYE_AUTH_SECRET??"",{verifySessionCookie:i}=await e.A(26404);return await i(a,s)??"anonymous"}catch{return"anonymous"}}e.s(["getRequestUsername",()=>o,"logActivity",()=>r,"logError",()=>i,"logWarn",()=>s])},81580,e=>{"use strict";var t=e.i(46786),n=e.i(14747);function a(){let e=process.env.CLAUDE_PROJECTS_PATH;return e||(0,n.join)((0,t.homedir)(),".claude","projects")}e.s(["getClaudeProjectsPath",()=>a])},54214,83534,41444,67405,e=>{"use strict";var t=e.i(24868),n=e.i(14747),a=e.i(81580);async function s(e,a,s,i){let r=`agent-${i}.jsonl`;for(let i of[(0,n.join)(e,a,r),(0,n.join)(e,a,s,r),(0,n.join)(e,a,s,"subagents",r)])if(!(0,n.relative)(e,i).startsWith(".."))try{return await (0,t.access)(i),i}catch(e){if("ENOENT"!==e.code)continue}return null}function i(e,t,n){let a=new Map,s=new Map,i=n?.maxSize;return async(...n)=>{let r=JSON.stringify(n),o=a.get(r);if(o&&Date.now()<o.expiry)return i&&(a.delete(r),a.set(r,o)),o.data;let l=s.get(r);if(l)return l;let u=e(...n).then(e=>{if(s.delete(r),i&&a.size>=i){let e=a.keys().next().value;a.delete(e)}return a.set(r,{data:e,expiry:Date.now()+1e3*t}),e},e=>{throw s.delete(r),e});return s.set(r,u),u}}function r(e){return new Intl.DateTimeFormat("en-US",{month:"short",day:"numeric",year:"numeric",hour:"numeric",minute:"2-digit",hour12:!0}).format(e)}function o(e){if(e<1e3)return`${e}ms`;let t=e/1e3;if(t<60)return`${t.toFixed(1)}s`;let n=Math.floor(t/60);if(n>=60){let e=Math.floor(n/60);return`${e}h ${n%60}m`}let a=(t%60).toFixed(0);return`${n}m ${a}s`}function l(e){let t=r(e),n=e.getMilliseconds().toString().padStart(3,"0");return`${t}.${n}`}function u(e,t,n,a){return{_source:a,uuid:e.uuid||"",parentUuid:e.parentUuid??null,timestamp:t,timestampMs:n.getTime(),timestampFormatted:l(n)}}async function c(e,t){let n=e.split("\n").filter(e=>""!==e.trim()),a=new Map,s=[],i=[],r=new Set,c=!1;for(let e=0;e<n.length;e++){let o;e>0&&e%200==0&&await new Promise(e=>setImmediate(e));let l=n[e];try{o=JSON.parse(l)}catch{continue}let f={...o,_source:t};i.push(f);let m=o.type,h=o.timestamp;if(!h)continue;let p=new Date(h),d=p.getTime();if("user"===m){let e=o.message;if(Array.isArray(e?.content)){let t=e.content;if(t.some(e=>"tool_result"===e.type)){let e=o.toolUseResult,n="string"==typeof e?.agentId?e.agentId:void 0;for(let e of(n&&/^[a-f0-9]+$/.test(n)&&r.add(n),t)){if("tool_result"!==e.type)continue;let t=e.tool_use_id;if(!t)continue;let{text:s,images:i}=function(e){let t=e.content;if("string"==typeof t)return{text:t};if(Array.isArray(t)){let e=t.filter(e=>"text"===e.type).map(e=>e.text),n=t.filter(e=>"image"===e.type).map(e=>{let t=e.source;return{base64:t.data,mediaType:t.media_type}}).filter(e=>e.base64&&e.mediaType);return{text:e.length>0?e.join("\n"):void 0,images:n.length>0?n:void 0}}return{}}(e);a.set(t,{timestamp:h,timestampMs:d,content:s,images:i,agentId:n})}continue}}let n="string"==typeof e?.content?e.content:"";s.push({type:"user",...u(o,h,p,t),message:{role:"user",content:n}});continue}if("assistant"===m){let e=o.message,n=[];if(Array.isArray(e?.content)&&(n=e.content.filter(e=>["text","tool_use","thinking"].includes(e.type)).map(e=>{if("text"===e.type)return{type:"text",text:e.text};if("tool_use"===e.type){let t=e.input;return{type:"tool_use",id:e.id,name:e.name,input:e.input??{},..."Task"===e.name&&t?{subagentType:t.subagent_type,subagentDescription:t.description}:{}}}return{type:"thinking",thinking:e.thinking,signature:e.signature}})),0===n.length)continue;s.push({type:"assistant",...u(o,h,p,t),message:{role:"assistant",content:n,model:e?.model}});continue}if("file-history-snapshot"===m||"progress"===m||"system"===m){s.push({type:m,...u(o,h,p,t),raw:{...o}});continue}if("queue-operation"===m){let e=c?"Session Resumed":"Session Started";c=!0,s.push({type:"queue-operation",...u(o,h,p,t),label:e});continue}}let f=0;for(let e of s)if("assistant"===e.type)for(let t of(++f%200==0&&await new Promise(e=>setImmediate(e)),e.message.content)){if("tool_use"!==t.type)continue;let n=a.get(t.id);if(!n)continue;let s=new Date(n.timestamp),i=n.timestampMs-e.timestampMs;t.result={timestamp:n.timestamp,timestampFormatted:l(s),content:n.content,images:n.images,durationMs:i,durationFormatted:o(i)},n.agentId&&(t.subagentId=n.agentId)}return s.length>500&&await new Promise(e=>setImmediate(e)),s.sort((e,t)=>e.timestampMs-t.timestampMs),{entries:s,rawLines:i,subagentIds:Array.from(r)}}function f(e,t){for(let n of e)if("assistant"===n.type){for(let e of n.message.content)if("tool_use"===e.type&&"Task"===e.name&&e.subagentId===t)return{type:e.subagentType,description:e.subagentDescription}}}async function m(e,i){let r=(0,a.getClaudeProjectsPath)(),o=(0,n.join)(r,e,`${i}.jsonl`),l=await (0,t.readFile)(o,"utf-8"),{entries:u,rawLines:f,subagentIds:m}=await c(l,"session");if(0===m.length)return{entries:u,rawLines:f,subagentIds:[]};let h=await Promise.allSettled(m.map(async n=>{let a=`agent-${n}`,o=await s(r,e,i,n);if(!o)return null;let l=await (0,t.readFile)(o,"utf-8"),{entries:u,rawLines:f}=await c(l,a);return{entries:u,rawLines:f}})),p=[...u],d=[...f];for(let e of h)"fulfilled"===e.status&&e.value&&(p.push(...e.value.entries),d.push(...e.value.rawLines));return p.length>500&&await new Promise(e=>setImmediate(e)),p.sort((e,t)=>e.timestampMs-t.timestampMs),{entries:p,rawLines:d,subagentIds:m}}e.s(["runtimeCache",()=>i],83534),e.s(["formatDate",()=>r],41444),e.s(["formatDuration",()=>o],67405);let h=i((e,t)=>m(e,t),60,{maxSize:50});e.s(["extractSubagentMeta",()=>f,"getCachedSessionLog",0,h],54214)},28753,e=>{"use strict";var t=e.i(24868),n=e.i(14747),a=e.i(92509);let s="__CLAUDEYE_LOADING_EVALS__",i=!1;async function r(e){try{return await (0,t.access)(e),!0}catch{return!1}}async function o(){let e=process.env.CLAUDEYE_DIST_PATH;if(e){let t=(0,n.resolve)(e,"index.js");if(await r(t))return t}for(let e of[(0,n.resolve)(process.cwd(),"dist","index.js"),(0,n.resolve)(process.cwd(),"node_modules","claudeye","dist","index.js")])if(await r(e))return e;return null}let l=/(?:import\s+(?:[\s\S]*?\s+from\s+)?|export\s+(?:[\s\S]*?\s+from\s+))(['"])(\.\.?\/[^'"]+)\1/g,u=/require\s*\(\s*(['"])(\.\.?\/[^'"]+)\1\s*\)/g,c=".__claudeye_tmp__.mjs";async function f(e,t){let a=(0,n.resolve)(e,t);for(let e of[a,`${a}.js`,`${a}.mjs`,`${a}.ts`,(0,n.resolve)(a,"index.js")])if(await r(e))return e;return null}async function m(e,n){let s=e+".__claudeye_esm_shim__.mjs",i=`import _cjs from '${n}';
2
2
  export const createApp = _cjs.createApp;
3
3
  export const getQueueCondition = _cjs.getQueueCondition;
4
4
  export const clearQueueCondition = _cjs.clearQueueCondition;
5
- export default _cjs;`;return await (0,t.writeFile)(s,i,"utf-8"),{shimPath:s,shimUrl:(0,a.pathToFileURL)(s).href}}async function m(e,a,s){let i=[e],r=new Set,o=[],m=null;if(s&&a){let e=await h(s,a);o.push(e.shimPath),m=e.shimUrl}for(;i.length>0;){let e=i.shift();if(r.has(e))continue;r.add(e);let a=await (0,t.readFile)(e,"utf-8");m&&(a=a.replace(/from\s+(['"])claudeye\1/g,`from '${m}'`)),s&&(a=a.replace(/require\s*\(\s*(['"])claudeye\1\s*\)/g,`require('${s.replace(/\\/g,"\\\\")}')`));let h=(0,n.dirname)(e),d=new Map;for(let e of[l,u]){let t,s=new RegExp(e.source,e.flags);for(;null!==(t=s.exec(a));){let e=t[2];if(d.has(e))continue;let a=await f(h,e);if(!a)continue;r.has(a)||i.includes(a)||i.push(a);let s=(0,n.relative)(h,a+c).split("\\").join("/");s.startsWith(".")||(s="./"+s),d.set(e,s)}}for(let e of[...d.keys()].sort((e,t)=>t.length-e.length)){let t=d.get(e),n=e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");a=(a=a.replace(RegExp(`'${n}'`,"g"),`'${t}'`)).replace(RegExp(`"${n}"`,"g"),`"${t}"`)}let p=e+c;await (0,t.writeFile)(p,a,"utf-8"),o.push(p)}return o}async function d(){if(i)return;let e=process.env.CLAUDEYE_EVALS_MODULE;if(!e){i=!0;return}let n=globalThis;n[s]=!0;let r=[];try{let t=await o(),n=t?(0,a.pathToFileURL)(t).href:null;r=await m(e,n,t);let s=(0,a.pathToFileURL)(e+c).href;await import(s)}finally{for(let e of(n[s]=!1,r))try{await (0,t.unlink)(e)}catch{}}i=!0}e.s(["ensureEvalsLoaded",()=>d])},14214,88107,71809,39864,e=>{"use strict";var t=e.i(54799),n=e.i(24868),a=e.i(14747),s=e.i(81580);let i=null;function r(){if(i)return i;let e=(0,a.resolve)((0,s.getClaudeProjectsPath)());return i=(0,t.createHash)("sha256").update(e).digest("hex").slice(0,8)}let o=new Map;async function l(e,i){let r=(0,s.getClaudeProjectsPath)(),l=(0,a.join)(r,e,`${i}.jsonl`),u=Date.now(),c=o.get(l);if(c&&c.expiresAt>u)return c.hash;let f=await (0,n.stat)(l),h=`${f.mtimeMs}:${f.size}`,m=(0,t.createHash)("sha256").update(h).digest("hex");return o.set(l,{hash:m,expiresAt:u+5e3}),m}async function u(e,i,r){let o=(0,s.getClaudeProjectsPath)(),l=`agent-${r}.jsonl`,u=[(0,a.join)(o,e,l),(0,a.join)(o,e,i,l),(0,a.join)(o,e,i,"subagents",l)];for(let e of(await Promise.allSettled(u.map(e=>(0,n.stat)(e)))))if("fulfilled"===e.status){let n=e.value,a=`${n.mtimeMs}:${n.size}`;return(0,t.createHash)("sha256").update(a).digest("hex")}return""}let c=new WeakMap;function f(e){let n=c.get(e);return n||(n=(0,t.createHash)("sha256").update(e.toString()).digest("hex"),c.set(e,n)),n}e.s(["hashItemCode",()=>f,"hashProjectsPath",()=>r,"hashSessionFile",()=>l,"hashSubagentFile",()=>u],88107);var h=e.i(46786);async function m(e,t){let n=Array(e.length),a=0;async function s(){for(;a<e.length;){let t=a++;try{n[t]={status:"fulfilled",value:await e[t]()}}catch(e){n[t]={status:"rejected",reason:e}}}}let i=Array.from({length:Math.min(t,e.length)},()=>s());return await Promise.all(i),n}e.s(["batchAll",()=>m],71809);var d=e.i(40911);let p=(0,a.join)((0,h.homedir)(),".claudeye","cache");class g{basePath;constructor(e){this.basePath=e||p}keyToPath(e){return(0,a.join)(this.basePath,`${e}.json`)}async get(e){try{let t=this.keyToPath(e),a=await (0,n.readFile)(t,"utf-8");return JSON.parse(a)}catch{return null}}async set(e,t,s){try{let i=this.keyToPath(e);await (0,n.mkdir)((0,a.dirname)(i),{recursive:!0}),await (0,n.writeFile)(i,JSON.stringify({value:t,meta:s}),"utf-8")}catch(t){(0,d.logWarn)(`[cache] Write failed for ${e}:`,t instanceof Error?t.message:t)}}async invalidate(e){try{await (0,n.unlink)(this.keyToPath(e))}catch{}}async invalidateByPrefix(e){try{let t=e.split("/"),s=t.pop()||"",i=(0,a.join)(this.basePath,...t),r=(await (0,n.readdir)(i)).filter(e=>e.endsWith(".json")&&e.startsWith(s));await m(r.map(e=>()=>(0,n.unlink)((0,a.join)(i,e)).catch(()=>{})),50)}catch{}}async close(){}async clearAll(){try{await (0,n.rm)(this.basePath,{recursive:!0,force:!0})}catch{}}}let y="__CLAUDEYE_CACHE_BACKEND__";function w(){let e=globalThis;if(e[y])return e[y];let t=new g(process.env.CLAUDEYE_CACHE_PATH||void 0);return e[y]=t,t}function _(e,t,n,a){let s=r();return`${s}/${e}/${t}/${n}/item/${a}`}async function $(e,t,n,a,s,i){let r=w();try{let o=await r.get(_(e,t,n,a));if(!o)return null;let u=o.meta,c=i??await l(t,n);if(u.contentHash!==c||u.itemCodeHash!==s)return null;return{value:o.value,meta:u,cached:!0}}catch{return null}}async function v(e,t,n,a,s,i,r){let o=w();try{let u=r??await l(t,n);await o.set(_(e,t,n,a),i,{cachedAt:new Date().toISOString(),contentHash:u,itemCodeHash:s})}catch(s){(0,d.logWarn)(`[cache] setPerItemCache failed for ${e}/${t}/${n}/${a}:`,s instanceof Error?s.message:s)}}async function A(t,n,a,s,i,r){let o=await $(t,n,a,s,i,r);if(!o)return null;if("evals"!==t&&"enrichments"!==t)return o;let{getCacheInvalidationHook:l}=await e.A(49590),u=l();if(!u)return o;let c={itemName:s,itemKind:t,cachedAt:o.meta.cachedAt,contentHash:o.meta.contentHash,itemCodeHash:o.meta.itemCodeHash,projectName:n,sessionId:a,cachedValue:o.value};try{if(await u(c))return await j(t,n,a,s),null}catch{}return o}async function j(e,t,n,a){let s=w();try{await s.invalidate(_(e,t,n,a))}catch{}}e.s(["getPerItemCacheWithHook",()=>A,"setPerItemCache",()=>v],39864),e.s([],14214)},26287,e=>{"use strict";var t=e.i(67405);function n(e){let n=0,a=0,s=0,i=0,r=0,o=new Set;for(let t of e)if("user"===t.type&&n++,"queue-operation"===t.type&&r++,"assistant"===t.type){for(let e of(a++,t.message.content))"tool_use"===e.type&&("Task"===e.name&&(e.subagentType||e.subagentId)?i++:s++);t.message.model&&o.add(t.message.model)}let l="";if(e.length>=2){let n=e[e.length-1].timestampMs-e[0].timestampMs;l=(0,t.formatDuration)(n)}return{turnCount:r,userCount:n,assistantCount:a,toolCallCount:s,subagentCount:i,duration:l,models:Array.from(o)}}e.s(["calculateLogStats",()=>n])}];
5
+ export default _cjs;`;return await (0,t.writeFile)(s,i,"utf-8"),{shimPath:s,shimUrl:(0,a.pathToFileURL)(s).href}}async function h(e,a,s){let i=[e],r=new Set,o=[],h=null;if(s&&a){let e=await m(s,a);o.push(e.shimPath),h=e.shimUrl}for(;i.length>0;){let e=i.shift();if(r.has(e))continue;r.add(e);let a=await (0,t.readFile)(e,"utf-8");h&&(a=a.replace(/from\s+(['"])claudeye\1/g,`from '${h}'`)),s&&(a=a.replace(/require\s*\(\s*(['"])claudeye\1\s*\)/g,`require('${s.replace(/\\/g,"\\\\")}')`));let m=(0,n.dirname)(e),p=new Map;for(let e of[l,u]){let t,s=new RegExp(e.source,e.flags);for(;null!==(t=s.exec(a));){let e=t[2];if(p.has(e))continue;let a=await f(m,e);if(!a)continue;r.has(a)||i.includes(a)||i.push(a);let s=(0,n.relative)(m,a+c).split("\\").join("/");s.startsWith(".")||(s="./"+s),p.set(e,s)}}for(let e of[...p.keys()].sort((e,t)=>t.length-e.length)){let t=p.get(e),n=e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");a=(a=a.replace(RegExp(`'${n}'`,"g"),`'${t}'`)).replace(RegExp(`"${n}"`,"g"),`"${t}"`)}let d=e+c;await (0,t.writeFile)(d,a,"utf-8"),o.push(d)}return o}async function p(){if(i)return;let e=process.env.CLAUDEYE_EVALS_MODULE;if(!e){i=!0;return}let n=globalThis;n[s]=!0;let r=[];try{let t=await o(),n=t?(0,a.pathToFileURL)(t).href:null;r=await h(e,n,t);let s=(0,a.pathToFileURL)(e+c).href;await import(s)}finally{for(let e of(n[s]=!1,r))try{await (0,t.unlink)(e)}catch{}}i=!0}e.s(["ensureEvalsLoaded",()=>p])},14214,88107,71809,39864,e=>{"use strict";var t=e.i(54799),n=e.i(24868),a=e.i(14747),s=e.i(81580);let i=null;function r(){if(i)return i;let e=(0,a.resolve)((0,s.getClaudeProjectsPath)());return i=(0,t.createHash)("sha256").update(e).digest("hex").slice(0,8)}let o=new Map;async function l(e,i){let r=(0,s.getClaudeProjectsPath)(),l=(0,a.join)(r,e,`${i}.jsonl`),u=Date.now(),c=o.get(l);if(c&&c.expiresAt>u)return c.hash;let f=await (0,n.stat)(l),m=`${f.mtimeMs}:${f.size}`,h=(0,t.createHash)("sha256").update(m).digest("hex");return o.set(l,{hash:h,expiresAt:u+5e3}),h}async function u(e,i,r){let o=(0,s.getClaudeProjectsPath)(),l=`agent-${r}.jsonl`,u=[(0,a.join)(o,e,l),(0,a.join)(o,e,i,l),(0,a.join)(o,e,i,"subagents",l)];for(let e of(await Promise.allSettled(u.map(e=>(0,n.stat)(e)))))if("fulfilled"===e.status){let n=e.value,a=`${n.mtimeMs}:${n.size}`;return(0,t.createHash)("sha256").update(a).digest("hex")}return""}let c=new WeakMap;function f(e){let n=c.get(e);return n||(n=(0,t.createHash)("sha256").update(e.toString()).digest("hex"),c.set(e,n)),n}e.s(["hashItemCode",()=>f,"hashProjectsPath",()=>r,"hashSessionFile",()=>l,"hashSubagentFile",()=>u],88107);var m=e.i(46786);async function h(e,t){let n=Array(e.length),a=0;async function s(){for(;a<e.length;){let t=a++;try{n[t]={status:"fulfilled",value:await e[t]()}}catch(e){n[t]={status:"rejected",reason:e}}}}let i=Array.from({length:Math.min(t,e.length)},()=>s());return await Promise.all(i),n}e.s(["batchAll",()=>h],71809);var p=e.i(40911);let d=(0,a.join)((0,m.homedir)(),".claudeye","cache");class g{basePath;constructor(e){this.basePath=e||d}keyToPath(e){return(0,a.join)(this.basePath,`${e}.json`)}async get(e){try{let t=this.keyToPath(e),a=await (0,n.readFile)(t,"utf-8");return JSON.parse(a)}catch{return null}}async set(e,t,s){try{let i=this.keyToPath(e);await (0,n.mkdir)((0,a.dirname)(i),{recursive:!0}),await (0,n.writeFile)(i,JSON.stringify({value:t,meta:s}),"utf-8")}catch(t){(0,p.logWarn)(`[cache] Write failed for ${e}:`,t instanceof Error?t.message:t)}}async invalidate(e){try{await (0,n.unlink)(this.keyToPath(e))}catch{}}async invalidateByPrefix(e){try{let t=e.split("/"),s=t.pop()||"",i=(0,a.join)(this.basePath,...t),r=(await (0,n.readdir)(i)).filter(e=>e.endsWith(".json")&&e.startsWith(s));await h(r.map(e=>()=>(0,n.unlink)((0,a.join)(i,e)).catch(()=>{})),50)}catch{}}async close(){}async clearAll(){try{await (0,n.rm)(this.basePath,{recursive:!0,force:!0})}catch{}}}let y="__CLAUDEYE_CACHE_BACKEND__";function w(){let e=globalThis;if(e[y])return e[y];let t=new g(process.env.CLAUDEYE_CACHE_PATH||void 0);return e[y]=t,t}function _(e,t,n,a){let s=r();return`${s}/${e}/${t}/${n}/item/${a}`}async function $(e,t,n,a,s,i){let r=w();try{let o=await r.get(_(e,t,n,a));if(!o)return null;let u=o.meta,c=i??await l(t,n);if(u.contentHash!==c||u.itemCodeHash!==s)return null;return{value:o.value,meta:u,cached:!0}}catch{return null}}async function v(e,t,n,a,s,i,r){let o=w();try{let u=r??await l(t,n);await o.set(_(e,t,n,a),i,{cachedAt:new Date().toISOString(),contentHash:u,itemCodeHash:s})}catch(s){(0,p.logWarn)(`[cache] setPerItemCache failed for ${e}/${t}/${n}/${a}:`,s instanceof Error?s.message:s)}}async function A(t,n,a,s,i,r){let o=await $(t,n,a,s,i,r);if(!o)return null;if("evals"!==t&&"enrichments"!==t)return o;let{getCacheInvalidationHook:l}=await e.A(49590),u=l();if(!u)return o;let c={itemName:s,itemKind:t,cachedAt:o.meta.cachedAt,contentHash:o.meta.contentHash,itemCodeHash:o.meta.itemCodeHash,projectName:n,sessionId:a,cachedValue:o.value};try{if(await u(c))return await j(t,n,a,s),null}catch{}return o}async function j(e,t,n,a){let s=w();try{await s.invalidate(_(e,t,n,a))}catch{}}e.s(["getPerItemCacheWithHook",()=>A,"setPerItemCache",()=>v],39864),e.s([],14214)},26287,e=>{"use strict";var t=e.i(67405);function n(e){let n=0,a=0,s=0,i=0,r=0,o=new Set;for(let t of e)if("user"===t.type&&n++,"queue-operation"===t.type&&r++,"assistant"===t.type){for(let e of(a++,t.message.content))"tool_use"===e.type&&("Task"===e.name&&(e.subagentType||e.subagentId)?i++:s++);t.message.model&&o.add(t.message.model)}let l="";if(e.length>=2){let n=e[e.length-1].timestampMs-e[0].timestampMs;l=(0,t.formatDuration)(n)}return{turnCount:r,userCount:n,assistantCount:a,toolCallCount:s,subagentCount:i,duration:l,models:Array.from(o)}}e.s(["calculateLogStats",()=>n])}];
6
6
 
7
7
  //# sourceMappingURL=_6a9d92e6._.js.map
@@ -1,7 +1,7 @@
1
- module.exports=[44967,e=>{"use strict";function t(e){function t(){let t=globalThis;return t[e]||(t[e]=[]),t[e]}return{register(e){let n=t(),a=n.findIndex(t=>t.name===e.name);a>=0?n[a]=e:n.push(e)},getAll:()=>t(),getSessionScoped:()=>t().filter(e=>"session"===e.scope||"both"===e.scope),getSubagentScoped:e=>t().filter(t=>("subagent"===t.scope||"both"===t.scope)&&(!t.subagentType||!e||t.subagentType===e)),hasSubagent:()=>t().some(e=>"subagent"===e.scope||"both"===e.scope),has:()=>t().length>0,clear(){globalThis[e]=[]}}}e.s(["createScopedRegistry",()=>t])},42315,(e,t,n)=>{"use strict";t.exports=e.r(18622)},81580,e=>{"use strict";var t=e.i(46786),n=e.i(14747);function a(){let e=process.env.CLAUDE_PROJECTS_PATH;return e||(0,n.join)((0,t.homedir)(),".claude","projects")}e.s(["getClaudeProjectsPath",()=>a])},40911,e=>{"use strict";let t={info:0,warn:1,error:2};function n(e){return t[e]>=t.warn}function a(e){return`[claudeye ${new Date().toISOString()}] ${e}`}function s(e,t){n("warn")&&(void 0!==t?console.warn(a("WARN"),e,t):console.warn(a("WARN"),e))}function i(e,t){void 0!==t?console.error(a("ERROR"),e,t):console.error(a("ERROR"),e)}function r(e,t,s){if(!n("info"))return;let i=[`user=${e}`,`action=${t}`];s&&i.push(s),console.log(a("ACTIVITY"),i.join(" "))}async function o(){try{let{cookies:t}=await e.A(6878),n=await t(),a=n.get("claudeye_session")?.value;if(!a)return"anonymous";let s=process.env.CLAUDEYE_AUTH_SECRET??"",{verifySessionCookie:i}=await e.A(26404);return await i(a,s)??"anonymous"}catch{return"anonymous"}}e.s(["getRequestUsername",()=>o,"logActivity",()=>r,"logError",()=>i,"logWarn",()=>s])},54214,83534,41444,67405,e=>{"use strict";var t=e.i(24868),n=e.i(14747),a=e.i(81580);async function s(e,a,s,i){let r=`agent-${i}.jsonl`;for(let i of[(0,n.join)(e,a,r),(0,n.join)(e,a,s,r),(0,n.join)(e,a,s,"subagents",r)])if(!(0,n.relative)(e,i).startsWith(".."))try{return await (0,t.access)(i),i}catch(e){if("ENOENT"!==e.code)continue}return null}function i(e,t,n){let a=new Map,s=new Map,i=n?.maxSize;return async(...n)=>{let r=JSON.stringify(n),o=a.get(r);if(o&&Date.now()<o.expiry)return i&&(a.delete(r),a.set(r,o)),o.data;let l=s.get(r);if(l)return l;let u=e(...n).then(e=>{if(s.delete(r),i&&a.size>=i){let e=a.keys().next().value;a.delete(e)}return a.set(r,{data:e,expiry:Date.now()+1e3*t}),e},e=>{throw s.delete(r),e});return s.set(r,u),u}}function r(e){return new Intl.DateTimeFormat("en-US",{month:"short",day:"numeric",year:"numeric",hour:"numeric",minute:"2-digit",hour12:!0}).format(e)}function o(e){if(e<1e3)return`${e}ms`;let t=e/1e3;if(t<60)return`${t.toFixed(1)}s`;let n=Math.floor(t/60);if(n>=60){let e=Math.floor(n/60);return`${e}h ${n%60}m`}let a=(t%60).toFixed(0);return`${n}m ${a}s`}function l(e){let t=r(e),n=e.getMilliseconds().toString().padStart(3,"0");return`${t}.${n}`}function u(e,t,n,a){return{_source:a,uuid:e.uuid||"",parentUuid:e.parentUuid??null,timestamp:t,timestampMs:n.getTime(),timestampFormatted:l(n)}}async function c(e,t){let n=e.split("\n").filter(e=>""!==e.trim()),a=new Map,s=[],i=[],r=new Set,c=!1;for(let e=0;e<n.length;e++){let o;e>0&&e%200==0&&await new Promise(e=>setImmediate(e));let l=n[e];try{o=JSON.parse(l)}catch{continue}let f={...o,_source:t};i.push(f);let h=o.type,m=o.timestamp;if(!m)continue;let d=new Date(m),p=d.getTime();if("user"===h){let e=o.message;if(Array.isArray(e?.content)){let t=e.content;if(t.some(e=>"tool_result"===e.type)){let e=o.toolUseResult,n="string"==typeof e?.agentId?e.agentId:void 0;for(let e of(n&&/^[a-f0-9]+$/.test(n)&&r.add(n),t)){if("tool_result"!==e.type)continue;let t=e.tool_use_id;if(!t)continue;let{text:s,images:i}=function(e){let t=e.content;if("string"==typeof t)return{text:t};if(Array.isArray(t)){let e=t.filter(e=>"text"===e.type).map(e=>e.text),n=t.filter(e=>"image"===e.type).map(e=>{let t=e.source;return{base64:t.data,mediaType:t.media_type}}).filter(e=>e.base64&&e.mediaType);return{text:e.length>0?e.join("\n"):void 0,images:n.length>0?n:void 0}}return{}}(e);a.set(t,{timestamp:m,timestampMs:p,content:s,images:i,agentId:n})}continue}}let n="string"==typeof e?.content?e.content:"";s.push({type:"user",...u(o,m,d,t),message:{role:"user",content:n}});continue}if("assistant"===h){let e=o.message,n=[];if(Array.isArray(e?.content)&&(n=e.content.filter(e=>["text","tool_use","thinking"].includes(e.type)).map(e=>{if("text"===e.type)return{type:"text",text:e.text};if("tool_use"===e.type){let t=e.input;return{type:"tool_use",id:e.id,name:e.name,input:e.input??{},..."Task"===e.name&&t?{subagentType:t.subagent_type,subagentDescription:t.description}:{}}}return{type:"thinking",thinking:e.thinking,signature:e.signature}})),0===n.length)continue;s.push({type:"assistant",...u(o,m,d,t),message:{role:"assistant",content:n,model:e?.model}});continue}if("file-history-snapshot"===h||"progress"===h||"system"===h){s.push({type:h,...u(o,m,d,t),raw:{...o}});continue}if("queue-operation"===h){let e=c?"Session Resumed":"Session Started";c=!0,s.push({type:"queue-operation",...u(o,m,d,t),label:e});continue}}let f=0;for(let e of s)if("assistant"===e.type)for(let t of(++f%200==0&&await new Promise(e=>setImmediate(e)),e.message.content)){if("tool_use"!==t.type)continue;let n=a.get(t.id);if(!n)continue;let s=new Date(n.timestamp),i=n.timestampMs-e.timestampMs;t.result={timestamp:n.timestamp,timestampFormatted:l(s),content:n.content,images:n.images,durationMs:i,durationFormatted:o(i)},n.agentId&&(t.subagentId=n.agentId)}return s.length>500&&await new Promise(e=>setImmediate(e)),s.sort((e,t)=>e.timestampMs-t.timestampMs),{entries:s,rawLines:i,subagentIds:Array.from(r)}}async function f(e,i){let r=(0,a.getClaudeProjectsPath)(),o=(0,n.join)(r,e,`${i}.jsonl`),l=await (0,t.readFile)(o,"utf-8"),{entries:u,rawLines:f,subagentIds:h}=await c(l,"session");if(0===h.length)return{entries:u,rawLines:f,subagentIds:[]};let m=await Promise.allSettled(h.map(async n=>{let a=`agent-${n}`,o=await s(r,e,i,n);if(!o)return null;let l=await (0,t.readFile)(o,"utf-8"),{entries:u,rawLines:f}=await c(l,a);return{entries:u,rawLines:f}})),d=[...u],p=[...f];for(let e of m)"fulfilled"===e.status&&e.value&&(d.push(...e.value.entries),p.push(...e.value.rawLines));return d.length>500&&await new Promise(e=>setImmediate(e)),d.sort((e,t)=>e.timestampMs-t.timestampMs),{entries:d,rawLines:p,subagentIds:h}}e.s(["runtimeCache",()=>i],83534),e.s(["formatDate",()=>r],41444),e.s(["formatDuration",()=>o],67405);let h=i((e,t)=>f(e,t),60,{maxSize:50});e.s(["getCachedSessionLog",0,h],54214)},28753,e=>{"use strict";var t=e.i(24868),n=e.i(14747),a=e.i(92509);let s="__CLAUDEYE_LOADING_EVALS__",i=!1;async function r(e){try{return await (0,t.access)(e),!0}catch{return!1}}async function o(){let e=process.env.CLAUDEYE_DIST_PATH;if(e){let t=(0,n.resolve)(e,"index.js");if(await r(t))return t}for(let e of[(0,n.resolve)(process.cwd(),"dist","index.js"),(0,n.resolve)(process.cwd(),"node_modules","claudeye","dist","index.js")])if(await r(e))return e;return null}let l=/(?:import\s+(?:[\s\S]*?\s+from\s+)?|export\s+(?:[\s\S]*?\s+from\s+))(['"])(\.\.?\/[^'"]+)\1/g,u=/require\s*\(\s*(['"])(\.\.?\/[^'"]+)\1\s*\)/g,c=".__claudeye_tmp__.mjs";async function f(e,t){let a=(0,n.resolve)(e,t);for(let e of[a,`${a}.js`,`${a}.mjs`,`${a}.ts`,(0,n.resolve)(a,"index.js")])if(await r(e))return e;return null}async function h(e,n){let s=e+".__claudeye_esm_shim__.mjs",i=`import _cjs from '${n}';
1
+ module.exports=[44967,e=>{"use strict";function t(e){function t(){let t=globalThis;return t[e]||(t[e]=[]),t[e]}return{register(e){let n=t(),a=n.findIndex(t=>t.name===e.name);a>=0?n[a]=e:n.push(e)},getAll:()=>t(),getSessionScoped:()=>t().filter(e=>"session"===e.scope||"both"===e.scope),getSubagentScoped:e=>t().filter(t=>("subagent"===t.scope||"both"===t.scope)&&(!t.subagentType||!e||t.subagentType===e)),hasSubagent:()=>t().some(e=>"subagent"===e.scope||"both"===e.scope),has:()=>t().length>0,clear(){globalThis[e]=[]}}}e.s(["createScopedRegistry",()=>t])},42315,(e,t,n)=>{"use strict";t.exports=e.r(18622)},81580,e=>{"use strict";var t=e.i(46786),n=e.i(14747);function a(){let e=process.env.CLAUDE_PROJECTS_PATH;return e||(0,n.join)((0,t.homedir)(),".claude","projects")}e.s(["getClaudeProjectsPath",()=>a])},40911,e=>{"use strict";let t={info:0,warn:1,error:2};function n(e){return t[e]>=t.warn}function a(e){return`[claudeye ${new Date().toISOString()}] ${e}`}function s(e,t){n("warn")&&(void 0!==t?console.warn(a("WARN"),e,t):console.warn(a("WARN"),e))}function i(e,t){void 0!==t?console.error(a("ERROR"),e,t):console.error(a("ERROR"),e)}function r(e,t,s){if(!n("info"))return;let i=[`user=${e}`,`action=${t}`];s&&i.push(s),console.log(a("ACTIVITY"),i.join(" "))}async function o(){try{let{cookies:t}=await e.A(6878),n=await t(),a=n.get("claudeye_session")?.value;if(!a)return"anonymous";let s=process.env.CLAUDEYE_AUTH_SECRET??"",{verifySessionCookie:i}=await e.A(26404);return await i(a,s)??"anonymous"}catch{return"anonymous"}}e.s(["getRequestUsername",()=>o,"logActivity",()=>r,"logError",()=>i,"logWarn",()=>s])},54214,83534,41444,67405,e=>{"use strict";var t=e.i(24868),n=e.i(14747),a=e.i(81580);async function s(e,a,s,i){let r=`agent-${i}.jsonl`;for(let i of[(0,n.join)(e,a,r),(0,n.join)(e,a,s,r),(0,n.join)(e,a,s,"subagents",r)])if(!(0,n.relative)(e,i).startsWith(".."))try{return await (0,t.access)(i),i}catch(e){if("ENOENT"!==e.code)continue}return null}function i(e,t,n){let a=new Map,s=new Map,i=n?.maxSize;return async(...n)=>{let r=JSON.stringify(n),o=a.get(r);if(o&&Date.now()<o.expiry)return i&&(a.delete(r),a.set(r,o)),o.data;let l=s.get(r);if(l)return l;let u=e(...n).then(e=>{if(s.delete(r),i&&a.size>=i){let e=a.keys().next().value;a.delete(e)}return a.set(r,{data:e,expiry:Date.now()+1e3*t}),e},e=>{throw s.delete(r),e});return s.set(r,u),u}}function r(e){return new Intl.DateTimeFormat("en-US",{month:"short",day:"numeric",year:"numeric",hour:"numeric",minute:"2-digit",hour12:!0}).format(e)}function o(e){if(e<1e3)return`${e}ms`;let t=e/1e3;if(t<60)return`${t.toFixed(1)}s`;let n=Math.floor(t/60);if(n>=60){let e=Math.floor(n/60);return`${e}h ${n%60}m`}let a=(t%60).toFixed(0);return`${n}m ${a}s`}function l(e){let t=r(e),n=e.getMilliseconds().toString().padStart(3,"0");return`${t}.${n}`}function u(e,t,n,a){return{_source:a,uuid:e.uuid||"",parentUuid:e.parentUuid??null,timestamp:t,timestampMs:n.getTime(),timestampFormatted:l(n)}}async function c(e,t){let n=e.split("\n").filter(e=>""!==e.trim()),a=new Map,s=[],i=[],r=new Set,c=!1;for(let e=0;e<n.length;e++){let o;e>0&&e%200==0&&await new Promise(e=>setImmediate(e));let l=n[e];try{o=JSON.parse(l)}catch{continue}let f={...o,_source:t};i.push(f);let m=o.type,h=o.timestamp;if(!h)continue;let p=new Date(h),d=p.getTime();if("user"===m){let e=o.message;if(Array.isArray(e?.content)){let t=e.content;if(t.some(e=>"tool_result"===e.type)){let e=o.toolUseResult,n="string"==typeof e?.agentId?e.agentId:void 0;for(let e of(n&&/^[a-f0-9]+$/.test(n)&&r.add(n),t)){if("tool_result"!==e.type)continue;let t=e.tool_use_id;if(!t)continue;let{text:s,images:i}=function(e){let t=e.content;if("string"==typeof t)return{text:t};if(Array.isArray(t)){let e=t.filter(e=>"text"===e.type).map(e=>e.text),n=t.filter(e=>"image"===e.type).map(e=>{let t=e.source;return{base64:t.data,mediaType:t.media_type}}).filter(e=>e.base64&&e.mediaType);return{text:e.length>0?e.join("\n"):void 0,images:n.length>0?n:void 0}}return{}}(e);a.set(t,{timestamp:h,timestampMs:d,content:s,images:i,agentId:n})}continue}}let n="string"==typeof e?.content?e.content:"";s.push({type:"user",...u(o,h,p,t),message:{role:"user",content:n}});continue}if("assistant"===m){let e=o.message,n=[];if(Array.isArray(e?.content)&&(n=e.content.filter(e=>["text","tool_use","thinking"].includes(e.type)).map(e=>{if("text"===e.type)return{type:"text",text:e.text};if("tool_use"===e.type){let t=e.input;return{type:"tool_use",id:e.id,name:e.name,input:e.input??{},..."Task"===e.name&&t?{subagentType:t.subagent_type,subagentDescription:t.description}:{}}}return{type:"thinking",thinking:e.thinking,signature:e.signature}})),0===n.length)continue;s.push({type:"assistant",...u(o,h,p,t),message:{role:"assistant",content:n,model:e?.model}});continue}if("file-history-snapshot"===m||"progress"===m||"system"===m){s.push({type:m,...u(o,h,p,t),raw:{...o}});continue}if("queue-operation"===m){let e=c?"Session Resumed":"Session Started";c=!0,s.push({type:"queue-operation",...u(o,h,p,t),label:e});continue}}let f=0;for(let e of s)if("assistant"===e.type)for(let t of(++f%200==0&&await new Promise(e=>setImmediate(e)),e.message.content)){if("tool_use"!==t.type)continue;let n=a.get(t.id);if(!n)continue;let s=new Date(n.timestamp),i=n.timestampMs-e.timestampMs;t.result={timestamp:n.timestamp,timestampFormatted:l(s),content:n.content,images:n.images,durationMs:i,durationFormatted:o(i)},n.agentId&&(t.subagentId=n.agentId)}return s.length>500&&await new Promise(e=>setImmediate(e)),s.sort((e,t)=>e.timestampMs-t.timestampMs),{entries:s,rawLines:i,subagentIds:Array.from(r)}}function f(e,t){for(let n of e)if("assistant"===n.type){for(let e of n.message.content)if("tool_use"===e.type&&"Task"===e.name&&e.subagentId===t)return{type:e.subagentType,description:e.subagentDescription}}}async function m(e,i){let r=(0,a.getClaudeProjectsPath)(),o=(0,n.join)(r,e,`${i}.jsonl`),l=await (0,t.readFile)(o,"utf-8"),{entries:u,rawLines:f,subagentIds:m}=await c(l,"session");if(0===m.length)return{entries:u,rawLines:f,subagentIds:[]};let h=await Promise.allSettled(m.map(async n=>{let a=`agent-${n}`,o=await s(r,e,i,n);if(!o)return null;let l=await (0,t.readFile)(o,"utf-8"),{entries:u,rawLines:f}=await c(l,a);return{entries:u,rawLines:f}})),p=[...u],d=[...f];for(let e of h)"fulfilled"===e.status&&e.value&&(p.push(...e.value.entries),d.push(...e.value.rawLines));return p.length>500&&await new Promise(e=>setImmediate(e)),p.sort((e,t)=>e.timestampMs-t.timestampMs),{entries:p,rawLines:d,subagentIds:m}}e.s(["runtimeCache",()=>i],83534),e.s(["formatDate",()=>r],41444),e.s(["formatDuration",()=>o],67405);let h=i((e,t)=>m(e,t),60,{maxSize:50});e.s(["extractSubagentMeta",()=>f,"getCachedSessionLog",0,h],54214)},28753,e=>{"use strict";var t=e.i(24868),n=e.i(14747),a=e.i(92509);let s="__CLAUDEYE_LOADING_EVALS__",i=!1;async function r(e){try{return await (0,t.access)(e),!0}catch{return!1}}async function o(){let e=process.env.CLAUDEYE_DIST_PATH;if(e){let t=(0,n.resolve)(e,"index.js");if(await r(t))return t}for(let e of[(0,n.resolve)(process.cwd(),"dist","index.js"),(0,n.resolve)(process.cwd(),"node_modules","claudeye","dist","index.js")])if(await r(e))return e;return null}let l=/(?:import\s+(?:[\s\S]*?\s+from\s+)?|export\s+(?:[\s\S]*?\s+from\s+))(['"])(\.\.?\/[^'"]+)\1/g,u=/require\s*\(\s*(['"])(\.\.?\/[^'"]+)\1\s*\)/g,c=".__claudeye_tmp__.mjs";async function f(e,t){let a=(0,n.resolve)(e,t);for(let e of[a,`${a}.js`,`${a}.mjs`,`${a}.ts`,(0,n.resolve)(a,"index.js")])if(await r(e))return e;return null}async function m(e,n){let s=e+".__claudeye_esm_shim__.mjs",i=`import _cjs from '${n}';
2
2
  export const createApp = _cjs.createApp;
3
3
  export const getQueueCondition = _cjs.getQueueCondition;
4
4
  export const clearQueueCondition = _cjs.clearQueueCondition;
5
- export default _cjs;`;return await (0,t.writeFile)(s,i,"utf-8"),{shimPath:s,shimUrl:(0,a.pathToFileURL)(s).href}}async function m(e,a,s){let i=[e],r=new Set,o=[],m=null;if(s&&a){let e=await h(s,a);o.push(e.shimPath),m=e.shimUrl}for(;i.length>0;){let e=i.shift();if(r.has(e))continue;r.add(e);let a=await (0,t.readFile)(e,"utf-8");m&&(a=a.replace(/from\s+(['"])claudeye\1/g,`from '${m}'`)),s&&(a=a.replace(/require\s*\(\s*(['"])claudeye\1\s*\)/g,`require('${s.replace(/\\/g,"\\\\")}')`));let h=(0,n.dirname)(e),d=new Map;for(let e of[l,u]){let t,s=new RegExp(e.source,e.flags);for(;null!==(t=s.exec(a));){let e=t[2];if(d.has(e))continue;let a=await f(h,e);if(!a)continue;r.has(a)||i.includes(a)||i.push(a);let s=(0,n.relative)(h,a+c).split("\\").join("/");s.startsWith(".")||(s="./"+s),d.set(e,s)}}for(let e of[...d.keys()].sort((e,t)=>t.length-e.length)){let t=d.get(e),n=e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");a=(a=a.replace(RegExp(`'${n}'`,"g"),`'${t}'`)).replace(RegExp(`"${n}"`,"g"),`"${t}"`)}let p=e+c;await (0,t.writeFile)(p,a,"utf-8"),o.push(p)}return o}async function d(){if(i)return;let e=process.env.CLAUDEYE_EVALS_MODULE;if(!e){i=!0;return}let n=globalThis;n[s]=!0;let r=[];try{let t=await o(),n=t?(0,a.pathToFileURL)(t).href:null;r=await m(e,n,t);let s=(0,a.pathToFileURL)(e+c).href;await import(s)}finally{for(let e of(n[s]=!1,r))try{await (0,t.unlink)(e)}catch{}}i=!0}e.s(["ensureEvalsLoaded",()=>d])},14214,88107,71809,39864,e=>{"use strict";var t=e.i(54799),n=e.i(24868),a=e.i(14747),s=e.i(81580);let i=null;function r(){if(i)return i;let e=(0,a.resolve)((0,s.getClaudeProjectsPath)());return i=(0,t.createHash)("sha256").update(e).digest("hex").slice(0,8)}let o=new Map;async function l(e,i){let r=(0,s.getClaudeProjectsPath)(),l=(0,a.join)(r,e,`${i}.jsonl`),u=Date.now(),c=o.get(l);if(c&&c.expiresAt>u)return c.hash;let f=await (0,n.stat)(l),h=`${f.mtimeMs}:${f.size}`,m=(0,t.createHash)("sha256").update(h).digest("hex");return o.set(l,{hash:m,expiresAt:u+5e3}),m}async function u(e,i,r){let o=(0,s.getClaudeProjectsPath)(),l=`agent-${r}.jsonl`,u=[(0,a.join)(o,e,l),(0,a.join)(o,e,i,l),(0,a.join)(o,e,i,"subagents",l)];for(let e of(await Promise.allSettled(u.map(e=>(0,n.stat)(e)))))if("fulfilled"===e.status){let n=e.value,a=`${n.mtimeMs}:${n.size}`;return(0,t.createHash)("sha256").update(a).digest("hex")}return""}let c=new WeakMap;function f(e){let n=c.get(e);return n||(n=(0,t.createHash)("sha256").update(e.toString()).digest("hex"),c.set(e,n)),n}e.s(["hashItemCode",()=>f,"hashProjectsPath",()=>r,"hashSessionFile",()=>l,"hashSubagentFile",()=>u],88107);var h=e.i(46786);async function m(e,t){let n=Array(e.length),a=0;async function s(){for(;a<e.length;){let t=a++;try{n[t]={status:"fulfilled",value:await e[t]()}}catch(e){n[t]={status:"rejected",reason:e}}}}let i=Array.from({length:Math.min(t,e.length)},()=>s());return await Promise.all(i),n}e.s(["batchAll",()=>m],71809);var d=e.i(40911);let p=(0,a.join)((0,h.homedir)(),".claudeye","cache");class g{basePath;constructor(e){this.basePath=e||p}keyToPath(e){return(0,a.join)(this.basePath,`${e}.json`)}async get(e){try{let t=this.keyToPath(e),a=await (0,n.readFile)(t,"utf-8");return JSON.parse(a)}catch{return null}}async set(e,t,s){try{let i=this.keyToPath(e);await (0,n.mkdir)((0,a.dirname)(i),{recursive:!0}),await (0,n.writeFile)(i,JSON.stringify({value:t,meta:s}),"utf-8")}catch(t){(0,d.logWarn)(`[cache] Write failed for ${e}:`,t instanceof Error?t.message:t)}}async invalidate(e){try{await (0,n.unlink)(this.keyToPath(e))}catch{}}async invalidateByPrefix(e){try{let t=e.split("/"),s=t.pop()||"",i=(0,a.join)(this.basePath,...t),r=(await (0,n.readdir)(i)).filter(e=>e.endsWith(".json")&&e.startsWith(s));await m(r.map(e=>()=>(0,n.unlink)((0,a.join)(i,e)).catch(()=>{})),50)}catch{}}async close(){}async clearAll(){try{await (0,n.rm)(this.basePath,{recursive:!0,force:!0})}catch{}}}let y="__CLAUDEYE_CACHE_BACKEND__";function w(){let e=globalThis;if(e[y])return e[y];let t=new g(process.env.CLAUDEYE_CACHE_PATH||void 0);return e[y]=t,t}function _(e,t,n,a){let s=r();return`${s}/${e}/${t}/${n}/item/${a}`}async function $(e,t,n,a,s,i){let r=w();try{let o=await r.get(_(e,t,n,a));if(!o)return null;let u=o.meta,c=i??await l(t,n);if(u.contentHash!==c||u.itemCodeHash!==s)return null;return{value:o.value,meta:u,cached:!0}}catch{return null}}async function v(e,t,n,a,s,i,r){let o=w();try{let u=r??await l(t,n);await o.set(_(e,t,n,a),i,{cachedAt:new Date().toISOString(),contentHash:u,itemCodeHash:s})}catch(s){(0,d.logWarn)(`[cache] setPerItemCache failed for ${e}/${t}/${n}/${a}:`,s instanceof Error?s.message:s)}}async function A(t,n,a,s,i,r){let o=await $(t,n,a,s,i,r);if(!o)return null;if("evals"!==t&&"enrichments"!==t)return o;let{getCacheInvalidationHook:l}=await e.A(49590),u=l();if(!u)return o;let c={itemName:s,itemKind:t,cachedAt:o.meta.cachedAt,contentHash:o.meta.contentHash,itemCodeHash:o.meta.itemCodeHash,projectName:n,sessionId:a,cachedValue:o.value};try{if(await u(c))return await j(t,n,a,s),null}catch{}return o}async function j(e,t,n,a){let s=w();try{await s.invalidate(_(e,t,n,a))}catch{}}e.s(["getPerItemCacheWithHook",()=>A,"setPerItemCache",()=>v],39864),e.s([],14214)},26287,e=>{"use strict";var t=e.i(67405);function n(e){let n=0,a=0,s=0,i=0,r=0,o=new Set;for(let t of e)if("user"===t.type&&n++,"queue-operation"===t.type&&r++,"assistant"===t.type){for(let e of(a++,t.message.content))"tool_use"===e.type&&("Task"===e.name&&(e.subagentType||e.subagentId)?i++:s++);t.message.model&&o.add(t.message.model)}let l="";if(e.length>=2){let n=e[e.length-1].timestampMs-e[0].timestampMs;l=(0,t.formatDuration)(n)}return{turnCount:r,userCount:n,assistantCount:a,toolCallCount:s,subagentCount:i,duration:l,models:Array.from(o)}}e.s(["calculateLogStats",()=>n])}];
5
+ export default _cjs;`;return await (0,t.writeFile)(s,i,"utf-8"),{shimPath:s,shimUrl:(0,a.pathToFileURL)(s).href}}async function h(e,a,s){let i=[e],r=new Set,o=[],h=null;if(s&&a){let e=await m(s,a);o.push(e.shimPath),h=e.shimUrl}for(;i.length>0;){let e=i.shift();if(r.has(e))continue;r.add(e);let a=await (0,t.readFile)(e,"utf-8");h&&(a=a.replace(/from\s+(['"])claudeye\1/g,`from '${h}'`)),s&&(a=a.replace(/require\s*\(\s*(['"])claudeye\1\s*\)/g,`require('${s.replace(/\\/g,"\\\\")}')`));let m=(0,n.dirname)(e),p=new Map;for(let e of[l,u]){let t,s=new RegExp(e.source,e.flags);for(;null!==(t=s.exec(a));){let e=t[2];if(p.has(e))continue;let a=await f(m,e);if(!a)continue;r.has(a)||i.includes(a)||i.push(a);let s=(0,n.relative)(m,a+c).split("\\").join("/");s.startsWith(".")||(s="./"+s),p.set(e,s)}}for(let e of[...p.keys()].sort((e,t)=>t.length-e.length)){let t=p.get(e),n=e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");a=(a=a.replace(RegExp(`'${n}'`,"g"),`'${t}'`)).replace(RegExp(`"${n}"`,"g"),`"${t}"`)}let d=e+c;await (0,t.writeFile)(d,a,"utf-8"),o.push(d)}return o}async function p(){if(i)return;let e=process.env.CLAUDEYE_EVALS_MODULE;if(!e){i=!0;return}let n=globalThis;n[s]=!0;let r=[];try{let t=await o(),n=t?(0,a.pathToFileURL)(t).href:null;r=await h(e,n,t);let s=(0,a.pathToFileURL)(e+c).href;await import(s)}finally{for(let e of(n[s]=!1,r))try{await (0,t.unlink)(e)}catch{}}i=!0}e.s(["ensureEvalsLoaded",()=>p])},14214,88107,71809,39864,e=>{"use strict";var t=e.i(54799),n=e.i(24868),a=e.i(14747),s=e.i(81580);let i=null;function r(){if(i)return i;let e=(0,a.resolve)((0,s.getClaudeProjectsPath)());return i=(0,t.createHash)("sha256").update(e).digest("hex").slice(0,8)}let o=new Map;async function l(e,i){let r=(0,s.getClaudeProjectsPath)(),l=(0,a.join)(r,e,`${i}.jsonl`),u=Date.now(),c=o.get(l);if(c&&c.expiresAt>u)return c.hash;let f=await (0,n.stat)(l),m=`${f.mtimeMs}:${f.size}`,h=(0,t.createHash)("sha256").update(m).digest("hex");return o.set(l,{hash:h,expiresAt:u+5e3}),h}async function u(e,i,r){let o=(0,s.getClaudeProjectsPath)(),l=`agent-${r}.jsonl`,u=[(0,a.join)(o,e,l),(0,a.join)(o,e,i,l),(0,a.join)(o,e,i,"subagents",l)];for(let e of(await Promise.allSettled(u.map(e=>(0,n.stat)(e)))))if("fulfilled"===e.status){let n=e.value,a=`${n.mtimeMs}:${n.size}`;return(0,t.createHash)("sha256").update(a).digest("hex")}return""}let c=new WeakMap;function f(e){let n=c.get(e);return n||(n=(0,t.createHash)("sha256").update(e.toString()).digest("hex"),c.set(e,n)),n}e.s(["hashItemCode",()=>f,"hashProjectsPath",()=>r,"hashSessionFile",()=>l,"hashSubagentFile",()=>u],88107);var m=e.i(46786);async function h(e,t){let n=Array(e.length),a=0;async function s(){for(;a<e.length;){let t=a++;try{n[t]={status:"fulfilled",value:await e[t]()}}catch(e){n[t]={status:"rejected",reason:e}}}}let i=Array.from({length:Math.min(t,e.length)},()=>s());return await Promise.all(i),n}e.s(["batchAll",()=>h],71809);var p=e.i(40911);let d=(0,a.join)((0,m.homedir)(),".claudeye","cache");class g{basePath;constructor(e){this.basePath=e||d}keyToPath(e){return(0,a.join)(this.basePath,`${e}.json`)}async get(e){try{let t=this.keyToPath(e),a=await (0,n.readFile)(t,"utf-8");return JSON.parse(a)}catch{return null}}async set(e,t,s){try{let i=this.keyToPath(e);await (0,n.mkdir)((0,a.dirname)(i),{recursive:!0}),await (0,n.writeFile)(i,JSON.stringify({value:t,meta:s}),"utf-8")}catch(t){(0,p.logWarn)(`[cache] Write failed for ${e}:`,t instanceof Error?t.message:t)}}async invalidate(e){try{await (0,n.unlink)(this.keyToPath(e))}catch{}}async invalidateByPrefix(e){try{let t=e.split("/"),s=t.pop()||"",i=(0,a.join)(this.basePath,...t),r=(await (0,n.readdir)(i)).filter(e=>e.endsWith(".json")&&e.startsWith(s));await h(r.map(e=>()=>(0,n.unlink)((0,a.join)(i,e)).catch(()=>{})),50)}catch{}}async close(){}async clearAll(){try{await (0,n.rm)(this.basePath,{recursive:!0,force:!0})}catch{}}}let y="__CLAUDEYE_CACHE_BACKEND__";function w(){let e=globalThis;if(e[y])return e[y];let t=new g(process.env.CLAUDEYE_CACHE_PATH||void 0);return e[y]=t,t}function _(e,t,n,a){let s=r();return`${s}/${e}/${t}/${n}/item/${a}`}async function $(e,t,n,a,s,i){let r=w();try{let o=await r.get(_(e,t,n,a));if(!o)return null;let u=o.meta,c=i??await l(t,n);if(u.contentHash!==c||u.itemCodeHash!==s)return null;return{value:o.value,meta:u,cached:!0}}catch{return null}}async function v(e,t,n,a,s,i,r){let o=w();try{let u=r??await l(t,n);await o.set(_(e,t,n,a),i,{cachedAt:new Date().toISOString(),contentHash:u,itemCodeHash:s})}catch(s){(0,p.logWarn)(`[cache] setPerItemCache failed for ${e}/${t}/${n}/${a}:`,s instanceof Error?s.message:s)}}async function A(t,n,a,s,i,r){let o=await $(t,n,a,s,i,r);if(!o)return null;if("evals"!==t&&"enrichments"!==t)return o;let{getCacheInvalidationHook:l}=await e.A(49590),u=l();if(!u)return o;let c={itemName:s,itemKind:t,cachedAt:o.meta.cachedAt,contentHash:o.meta.contentHash,itemCodeHash:o.meta.itemCodeHash,projectName:n,sessionId:a,cachedValue:o.value};try{if(await u(c))return await j(t,n,a,s),null}catch{}return o}async function j(e,t,n,a){let s=w();try{await s.invalidate(_(e,t,n,a))}catch{}}e.s(["getPerItemCacheWithHook",()=>A,"setPerItemCache",()=>v],39864),e.s([],14214)},26287,e=>{"use strict";var t=e.i(67405);function n(e){let n=0,a=0,s=0,i=0,r=0,o=new Set;for(let t of e)if("user"===t.type&&n++,"queue-operation"===t.type&&r++,"assistant"===t.type){for(let e of(a++,t.message.content))"tool_use"===e.type&&("Task"===e.name&&(e.subagentType||e.subagentId)?i++:s++);t.message.model&&o.add(t.message.model)}let l="";if(e.length>=2){let n=e[e.length-1].timestampMs-e[0].timestampMs;l=(0,t.formatDuration)(n)}return{turnCount:r,userCount:n,assistantCount:a,toolCallCount:s,subagentCount:i,duration:l,models:Array.from(o)}}e.s(["calculateLogStats",()=>n])}];
6
6
 
7
7
  //# sourceMappingURL=_7cb7a702._.js.map
@@ -1,4 +1,4 @@
1
1
  module.exports=[97953,(e,r,t)=>{"use strict";r.exports=e.r(42315).vendored["react-rsc"].ReactServerDOMTurbopackServer},45015,(e,r,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"registerServerReference",{enumerable:!0,get:function(){return s.registerServerReference}});let s=e.r(97953)},14543,e=>{"use strict";async function r(e,r,t){let s=[],n=performance.now(),a=globalThis.__CLAUDEYE_CONDITION_REGISTRY__??null,o=!1;if(a)try{await a(r)||(o=!0)}catch{o=!0}if(o)for(let r of e)s.push(t.skipResult(r));else{let n=e.map(async e=>{if(e.condition)try{if(!await e.condition(r))return t.skipResult(e)}catch(r){return t.errorResult(e,`Condition error: ${r instanceof Error?r.message:String(r)}`,0)}let s=performance.now();try{let n=await e.fn(r),a=Math.round(performance.now()-s);return t.successResult(e,n,a)}catch(n){let r=Math.round(performance.now()-s);return t.errorResult(e,n instanceof Error?n.message:String(n),r)}});for(let e of(await Promise.allSettled(n)))s.push("fulfilled"===e.status?e.value:t.unexpectedResult())}let i=Math.round(performance.now()-n);return t.buildSummary(s,i)}e.s(["runAll",()=>r],14543)},95975,(e,r,t)=>{"use strict";function s(e){for(let r=0;r<e.length;r++){let t=e[r];if("function"!=typeof t)throw Object.defineProperty(Error(`A "use server" file can only export async functions, found ${typeof t}.
2
- Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"ensureServerEntryExports",{enumerable:!0,get:function(){return s}})},22308,e=>{"use strict";var r=e.i(77879),t=e.i(14543);async function s(e,s,n,a,o,i){let u=o??(0,r.getRegisteredEvals)(),l={entries:e,stats:s,projectName:n,sessionId:a,source:"session",...i};return(0,t.runAll)(u,l,{skipResult:e=>({name:e.name,pass:!1,score:0,durationMs:0,skipped:!0}),successResult:(e,r,t)=>{var s;return{name:e.name,pass:r.pass,score:null==(s=r.score)?1:Math.max(0,Math.min(1,s)),message:r.message,metadata:r.metadata,durationMs:t}},errorResult:(e,r,t)=>({name:e.name,pass:!1,score:0,durationMs:t,error:r}),unexpectedResult:()=>({name:"?",pass:!1,score:0,durationMs:0,error:"Unexpected rejection"}),buildSummary:(e,r)=>{let t=0,s=0,n=0,a=0;for(let r of e)r.skipped?a++:r.error?n++:r.pass?t++:s++;return{results:e,totalDurationMs:r,passCount:t,failCount:s,errorCount:n,skippedCount:a}}})}e.s(["runAllEvals",()=>s])},81929,e=>{"use strict";var r=e.i(45015),t=e.i(28753),s=e.i(77879),n=e.i(22308),a=e.i(54214),o=e.i(26287);e.i(14214);var i=e.i(88107),u=e.i(39864);async function l(e,r,c,f=!1){try{await (0,t.ensureEvalsLoaded)();let l=(0,s.getSessionScopedEvals)().find(e=>e.name===c);if(!l)return{ok:!1,error:`Eval "${c}" not found`};let d=await (0,i.hashSessionFile)(e,r);if(!f&&d){let t=(0,i.hashItemCode)(l.fn),s=await (0,u.getPerItemCacheWithHook)("evals",e,r,l.name,t,d);if(s)return{ok:!0,result:s.value}}let{entries:m,rawLines:p}=await (0,a.getCachedSessionLog)(e,r),v=(0,o.calculateLogStats)(m),g=(await (0,n.runAllEvals)(p,v,e,r,[l],{source:"session"})).results[0];if(!g)return{ok:!1,error:"No result returned from eval"};if(d){let t=(0,i.hashItemCode)(l.fn);await (0,u.setPerItemCache)("evals",e,r,l.name,t,g,d)}return{ok:!0,result:g}}catch(e){return{ok:!1,error:e instanceof Error?e.message:String(e)}}}(0,e.i(95975).ensureServerEntryExports)([l]),(0,r.registerServerReference)(l,"78c691fcaeb16c3493b6522cc94a6b6ba746723e53",null),e.s(["processSessionEval",()=>l])}];
2
+ Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"ensureServerEntryExports",{enumerable:!0,get:function(){return s}})},22308,e=>{"use strict";var r=e.i(77879),t=e.i(14543);async function s(e,s,n,a,o,i){let u=o??(0,r.getRegisteredEvals)(),l={entries:e,stats:s,projectName:n,sessionId:a,source:"session",...i};return(0,t.runAll)(u,l,{skipResult:e=>({name:e.name,pass:!1,score:0,durationMs:0,skipped:!0}),successResult:(e,r,t)=>{var s;return{name:e.name,pass:r.pass,score:null==(s=r.score)?1:Math.max(0,Math.min(1,s)),message:r.message,metadata:r.metadata,durationMs:t}},errorResult:(e,r,t)=>({name:e.name,pass:!1,score:0,durationMs:t,error:r}),unexpectedResult:()=>({name:"?",pass:!1,score:0,durationMs:0,error:"Unexpected rejection"}),buildSummary:(e,r)=>{let t=0,s=0,n=0,a=0;for(let r of e)r.skipped?a++:r.error?n++:r.pass?t++:s++;return{results:e,totalDurationMs:r,passCount:t,failCount:s,errorCount:n,skippedCount:a}}})}e.s(["runAllEvals",()=>s])},81929,e=>{"use strict";var r=e.i(45015),t=e.i(28753),s=e.i(77879),n=e.i(22308),a=e.i(54214),o=e.i(26287);e.i(14214);var i=e.i(88107),u=e.i(39864);async function l(e,r,c,f=!1){try{await (0,t.ensureEvalsLoaded)();let l=(0,s.getSessionScopedEvals)().find(e=>e.name===c);if(!l)return{ok:!1,error:`Eval "${c}" not found`};let d=await (0,i.hashSessionFile)(e,r);if(!f&&d){let t=(0,i.hashItemCode)(l.fn),s=await (0,u.getPerItemCacheWithHook)("evals",e,r,l.name,t,d);if(s)return{ok:!0,result:s.value}}let{entries:m,rawLines:p}=await (0,a.getCachedSessionLog)(e,r),v=(0,o.calculateLogStats)(m),g=(await (0,n.runAllEvals)(p,v,e,r,[l],{source:"session"})).results[0];if(!g)return{ok:!1,error:"No result returned from eval"};if(d){let t=(0,i.hashItemCode)(l.fn);await (0,u.setPerItemCache)("evals",e,r,l.name,t,g,d)}return{ok:!0,result:g}}catch(e){return{ok:!1,error:e instanceof Error?e.message:String(e)}}}(0,e.i(95975).ensureServerEntryExports)([l]),(0,r.registerServerReference)(l,"78e8e9a9e2d7ce31bd5ef92cd1bb71e9b31fa67a8f",null),e.s(["processSessionEval",()=>l])}];
3
3
 
4
4
  //# sourceMappingURL=_7e07bbd9._.js.map
@@ -1,4 +1,4 @@
1
- module.exports=[97953,(e,r,t)=>{"use strict";r.exports=e.r(42315).vendored["react-rsc"].ReactServerDOMTurbopackServer},45015,(e,r,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"registerServerReference",{enumerable:!0,get:function(){return n.registerServerReference}});let n=e.r(97953)},14543,e=>{"use strict";async function r(e,r,t){let n=[],s=performance.now(),o=globalThis.__CLAUDEYE_CONDITION_REGISTRY__??null,i=!1;if(o)try{await o(r)||(i=!0)}catch{i=!0}if(i)for(let r of e)n.push(t.skipResult(r));else{let s=e.map(async e=>{if(e.condition)try{if(!await e.condition(r))return t.skipResult(e)}catch(r){return t.errorResult(e,`Condition error: ${r instanceof Error?r.message:String(r)}`,0)}let n=performance.now();try{let s=await e.fn(r),o=Math.round(performance.now()-n);return t.successResult(e,s,o)}catch(s){let r=Math.round(performance.now()-n);return t.errorResult(e,s instanceof Error?s.message:String(s),r)}});for(let e of(await Promise.allSettled(s)))n.push("fulfilled"===e.status?e.value:t.unexpectedResult())}let a=Math.round(performance.now()-s);return t.buildSummary(n,a)}e.s(["runAll",()=>r],14543)},95975,(e,r,t)=>{"use strict";function n(e){for(let r=0;r<e.length;r++){let t=e[r];if("function"!=typeof t)throw Object.defineProperty(Error(`A "use server" file can only export async functions, found ${typeof t}.
2
- Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"ensureServerEntryExports",{enumerable:!0,get:function(){return n}})},7420,e=>{"use strict";var r=e.i(84234),t=e.i(14543);async function n(e,n,s,o,i,a){let u=i??(0,r.getRegisteredEnrichers)(),c={entries:e,stats:n,projectName:s,sessionId:o,source:"session",...a};return(0,t.runAll)(u,c,{skipResult:e=>({name:e.name,data:{},durationMs:0,skipped:!0}),successResult:(e,r,t)=>({name:e.name,data:r,durationMs:t}),errorResult:(e,r,t)=>({name:e.name,data:{},durationMs:t,error:r}),unexpectedResult:()=>({name:"?",data:{},durationMs:0,error:"Unexpected rejection"}),buildSummary:(e,r)=>{let t=0,n=0;for(let r of e)r.skipped?n++:r.error&&t++;return{results:e,totalDurationMs:r,errorCount:t,skippedCount:n}}})}e.s(["runAllEnrichers",()=>n])},91560,e=>{"use strict";var r=e.i(45015),t=e.i(28753),n=e.i(84234),s=e.i(7420),o=e.i(54214),i=e.i(26287);e.i(14214);var a=e.i(88107),u=e.i(39864);async function c(e,r,l,f=!1){try{await (0,t.ensureEvalsLoaded)();let c=(0,n.getSessionScopedEnrichers)().find(e=>e.name===l);if(!c)return{ok:!1,error:`Enricher "${l}" not found`};let d=await (0,a.hashSessionFile)(e,r);if(!f&&d){let t=(0,a.hashItemCode)(c.fn),n=await (0,u.getPerItemCacheWithHook)("enrichments",e,r,c.name,t,d);if(n)return{ok:!0,result:n.value}}let{entries:m,rawLines:p}=await (0,o.getCachedSessionLog)(e,r),h=(0,i.calculateLogStats)(m),g=(await (0,s.runAllEnrichers)(p,h,e,r,[c],{source:"session"})).results[0];if(!g)return{ok:!1,error:"No result returned from enricher"};if(d){let t=(0,a.hashItemCode)(c.fn);await (0,u.setPerItemCache)("enrichments",e,r,c.name,t,g,d)}return{ok:!0,result:g}}catch(e){return{ok:!1,error:e instanceof Error?e.message:String(e)}}}(0,e.i(95975).ensureServerEntryExports)([c]),(0,r.registerServerReference)(c,"78780c9fe886ef2c486f1d1290698fc259323a87d6",null),e.s(["processSessionEnrichment",()=>c])}];
1
+ module.exports=[97953,(e,r,t)=>{"use strict";r.exports=e.r(42315).vendored["react-rsc"].ReactServerDOMTurbopackServer},45015,(e,r,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"registerServerReference",{enumerable:!0,get:function(){return n.registerServerReference}});let n=e.r(97953)},14543,e=>{"use strict";async function r(e,r,t){let n=[],s=performance.now(),o=globalThis.__CLAUDEYE_CONDITION_REGISTRY__??null,a=!1;if(o)try{await o(r)||(a=!0)}catch{a=!0}if(a)for(let r of e)n.push(t.skipResult(r));else{let s=e.map(async e=>{if(e.condition)try{if(!await e.condition(r))return t.skipResult(e)}catch(r){return t.errorResult(e,`Condition error: ${r instanceof Error?r.message:String(r)}`,0)}let n=performance.now();try{let s=await e.fn(r),o=Math.round(performance.now()-n);return t.successResult(e,s,o)}catch(s){let r=Math.round(performance.now()-n);return t.errorResult(e,s instanceof Error?s.message:String(s),r)}});for(let e of(await Promise.allSettled(s)))n.push("fulfilled"===e.status?e.value:t.unexpectedResult())}let i=Math.round(performance.now()-s);return t.buildSummary(n,i)}e.s(["runAll",()=>r],14543)},95975,(e,r,t)=>{"use strict";function n(e){for(let r=0;r<e.length;r++){let t=e[r];if("function"!=typeof t)throw Object.defineProperty(Error(`A "use server" file can only export async functions, found ${typeof t}.
2
+ Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"ensureServerEntryExports",{enumerable:!0,get:function(){return n}})},7420,e=>{"use strict";var r=e.i(84234),t=e.i(14543);async function n(e,n,s,o,a,i){let u=a??(0,r.getRegisteredEnrichers)(),c={entries:e,stats:n,projectName:s,sessionId:o,source:"session",...i};return(0,t.runAll)(u,c,{skipResult:e=>({name:e.name,data:{},durationMs:0,skipped:!0}),successResult:(e,r,t)=>({name:e.name,data:r,durationMs:t}),errorResult:(e,r,t)=>({name:e.name,data:{},durationMs:t,error:r}),unexpectedResult:()=>({name:"?",data:{},durationMs:0,error:"Unexpected rejection"}),buildSummary:(e,r)=>{let t=0,n=0;for(let r of e)r.skipped?n++:r.error&&t++;return{results:e,totalDurationMs:r,errorCount:t,skippedCount:n}}})}e.s(["runAllEnrichers",()=>n])},91560,e=>{"use strict";var r=e.i(45015),t=e.i(28753),n=e.i(84234),s=e.i(7420),o=e.i(54214),a=e.i(26287);e.i(14214);var i=e.i(88107),u=e.i(39864);async function c(e,r,l,f=!1){try{await (0,t.ensureEvalsLoaded)();let c=(0,n.getSessionScopedEnrichers)().find(e=>e.name===l);if(!c)return{ok:!1,error:`Enricher "${l}" not found`};let d=await (0,i.hashSessionFile)(e,r);if(!f&&d){let t=(0,i.hashItemCode)(c.fn),n=await (0,u.getPerItemCacheWithHook)("enrichments",e,r,c.name,t,d);if(n)return{ok:!0,result:n.value}}let{entries:m,rawLines:p}=await (0,o.getCachedSessionLog)(e,r),h=(0,a.calculateLogStats)(m),g=(await (0,s.runAllEnrichers)(p,h,e,r,[c],{source:"session"})).results[0];if(!g)return{ok:!1,error:"No result returned from enricher"};if(d){let t=(0,i.hashItemCode)(c.fn);await (0,u.setPerItemCache)("enrichments",e,r,c.name,t,g,d)}return{ok:!0,result:g}}catch(e){return{ok:!1,error:e instanceof Error?e.message:String(e)}}}(0,e.i(95975).ensureServerEntryExports)([c]),(0,r.registerServerReference)(c,"78982a3b98f62acc979ab32a93d0850972bd64613f",null),e.s(["processSessionEnrichment",()=>c])}];
3
3
 
4
4
  //# sourceMappingURL=_8f856fad._.js.map
@@ -1,3 +1,3 @@
1
1
  module.exports=[38281,n=>{"use strict";let e={info:0,warn:1,error:2},o="warn";function r(){let n=(process.env.CLAUDEYE_LOG_LEVEL??"").toLowerCase();o="info"===n||"warn"===n||"error"===n?n:"warn"}function t(){return o}function s(n){return e[n]>=e[o]}function a(n){return`[claudeye ${new Date().toISOString()}] ${n}`}function i(n,e){s("info")&&(void 0!==e?console.log(a("INFO"),n,e):console.log(a("INFO"),n))}function l(n,e){s("warn")&&(void 0!==e?console.warn(a("WARN"),n,e):console.warn(a("WARN"),n))}function u(n,e){void 0!==e?console.error(a("ERROR"),n,e):console.error(a("ERROR"),n)}function c(n,e,o){if(!s("info"))return;let r=[`user=${n}`,`action=${e}`];o&&r.push(o),console.log(a("ACTIVITY"),r.join(" "))}async function f(){try{let{cookies:e}=await n.A(62916),o=await e(),r=o.get("claudeye_session")?.value;if(!r)return"anonymous";let t=process.env.CLAUDEYE_AUTH_SECRET??"",{verifySessionCookie:s}=await n.A(16866);return await s(r,t)??"anonymous"}catch{return"anonymous"}}n.s(["getLogLevel",()=>t,"getRequestUsername",()=>f,"initLogger",()=>r,"logActivity",()=>c,"logError",()=>u,"logInfo",()=>i,"logWarn",()=>l])},62916,n=>{n.v(e=>Promise.all(["server/chunks/[externals]_next_dist_86eb7852._.js","server/chunks/node_modules_next_286d3fa3._.js"].map(e=>n.l(e))).then(()=>e(37294)))},16866,n=>{n.v(e=>Promise.all(["server/chunks/lib_auth_ts_cfe39263._.js"].map(e=>n.l(e))).then(()=>e(70760)))}];
2
2
 
3
- //# sourceMappingURL=_63727770._.js.map
3
+ //# sourceMappingURL=_b7316450._.js.map
@@ -1,4 +1,4 @@
1
- module.exports=[97953,(e,r,t)=>{"use strict";r.exports=e.r(42315).vendored["react-rsc"].ReactServerDOMTurbopackServer},45015,(e,r,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"registerServerReference",{enumerable:!0,get:function(){return n.registerServerReference}});let n=e.r(97953)},14543,e=>{"use strict";async function r(e,r,t){let n=[],s=performance.now(),a=globalThis.__CLAUDEYE_CONDITION_REGISTRY__??null,o=!1;if(a)try{await a(r)||(o=!0)}catch{o=!0}if(o)for(let r of e)n.push(t.skipResult(r));else{let s=e.map(async e=>{if(e.condition)try{if(!await e.condition(r))return t.skipResult(e)}catch(r){return t.errorResult(e,`Condition error: ${r instanceof Error?r.message:String(r)}`,0)}let n=performance.now();try{let s=await e.fn(r),a=Math.round(performance.now()-n);return t.successResult(e,s,a)}catch(s){let r=Math.round(performance.now()-n);return t.errorResult(e,s instanceof Error?s.message:String(s),r)}});for(let e of(await Promise.allSettled(s)))n.push("fulfilled"===e.status?e.value:t.unexpectedResult())}let i=Math.round(performance.now()-s);return t.buildSummary(n,i)}e.s(["runAll",()=>r],14543)},95975,(e,r,t)=>{"use strict";function n(e){for(let r=0;r<e.length;r++){let t=e[r];if("function"!=typeof t)throw Object.defineProperty(Error(`A "use server" file can only export async functions, found ${typeof t}.
2
- Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"ensureServerEntryExports",{enumerable:!0,get:function(){return n}})},7420,e=>{"use strict";var r=e.i(84234),t=e.i(14543);async function n(e,n,s,a,o,i){let u=o??(0,r.getRegisteredEnrichers)(),c={entries:e,stats:n,projectName:s,sessionId:a,source:"session",...i};return(0,t.runAll)(u,c,{skipResult:e=>({name:e.name,data:{},durationMs:0,skipped:!0}),successResult:(e,r,t)=>({name:e.name,data:r,durationMs:t}),errorResult:(e,r,t)=>({name:e.name,data:{},durationMs:t,error:r}),unexpectedResult:()=>({name:"?",data:{},durationMs:0,error:"Unexpected rejection"}),buildSummary:(e,r)=>{let t=0,n=0;for(let r of e)r.skipped?n++:r.error&&t++;return{results:e,totalDurationMs:r,errorCount:t,skippedCount:n}}})}e.s(["runAllEnrichers",()=>n])},28488,e=>{"use strict";var r=e.i(45015),t=e.i(28753),n=e.i(84234),s=e.i(7420),a=e.i(54214),o=e.i(26287);e.i(14214);var i=e.i(88107),u=e.i(39864);async function c(e,r,l,f,d=!1,m,p){try{await (0,t.ensureEvalsLoaded)();let c=(0,n.getSubagentScopedEnrichers)(m).find(e=>e.name===f);if(!c)return{ok:!1,error:`Enricher "${f}" not found for subagent type "${m??"any"}"`};let h=`${r}/agent-${l}`,g=await (0,i.hashSubagentFile)(e,r,l);if(!d&&g){let r=(0,i.hashItemCode)(c.fn),t=await (0,u.getPerItemCacheWithHook)("enrichments",e,h,c.name,r,g);if(t)return{ok:!0,result:t.value}}let{entries:y,rawLines:E}=await (0,a.getCachedSessionLog)(e,r),v=(0,o.calculateLogStats)(y),R=(await (0,s.runAllEnrichers)(E,v,e,r,[c],{source:`agent-${l}`,subagentType:m,subagentDescription:p,parentSessionId:r})).results[0];if(!R)return{ok:!1,error:"No result returned from enricher"};if(g){let r=(0,i.hashItemCode)(c.fn);await (0,u.setPerItemCache)("enrichments",e,h,c.name,r,R,g)}return{ok:!0,result:R}}catch(e){return{ok:!1,error:e instanceof Error?e.message:String(e)}}}(0,e.i(95975).ensureServerEntryExports)([c]),(0,r.registerServerReference)(c,"7f21ed919c57166092d70619cdbc93ff1c2c0a6296",null),e.s(["processSubagentEnrichment",()=>c])}];
1
+ module.exports=[97953,(e,r,t)=>{"use strict";r.exports=e.r(42315).vendored["react-rsc"].ReactServerDOMTurbopackServer},45015,(e,r,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"registerServerReference",{enumerable:!0,get:function(){return n.registerServerReference}});let n=e.r(97953)},14543,e=>{"use strict";async function r(e,r,t){let n=[],a=performance.now(),s=globalThis.__CLAUDEYE_CONDITION_REGISTRY__??null,o=!1;if(s)try{await s(r)||(o=!0)}catch{o=!0}if(o)for(let r of e)n.push(t.skipResult(r));else{let a=e.map(async e=>{if(e.condition)try{if(!await e.condition(r))return t.skipResult(e)}catch(r){return t.errorResult(e,`Condition error: ${r instanceof Error?r.message:String(r)}`,0)}let n=performance.now();try{let a=await e.fn(r),s=Math.round(performance.now()-n);return t.successResult(e,a,s)}catch(a){let r=Math.round(performance.now()-n);return t.errorResult(e,a instanceof Error?a.message:String(a),r)}});for(let e of(await Promise.allSettled(a)))n.push("fulfilled"===e.status?e.value:t.unexpectedResult())}let i=Math.round(performance.now()-a);return t.buildSummary(n,i)}e.s(["runAll",()=>r],14543)},95975,(e,r,t)=>{"use strict";function n(e){for(let r=0;r<e.length;r++){let t=e[r];if("function"!=typeof t)throw Object.defineProperty(Error(`A "use server" file can only export async functions, found ${typeof t}.
2
+ Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"ensureServerEntryExports",{enumerable:!0,get:function(){return n}})},7420,e=>{"use strict";var r=e.i(84234),t=e.i(14543);async function n(e,n,a,s,o,i){let u=o??(0,r.getRegisteredEnrichers)(),c={entries:e,stats:n,projectName:a,sessionId:s,source:"session",...i};return(0,t.runAll)(u,c,{skipResult:e=>({name:e.name,data:{},durationMs:0,skipped:!0}),successResult:(e,r,t)=>({name:e.name,data:r,durationMs:t}),errorResult:(e,r,t)=>({name:e.name,data:{},durationMs:t,error:r}),unexpectedResult:()=>({name:"?",data:{},durationMs:0,error:"Unexpected rejection"}),buildSummary:(e,r)=>{let t=0,n=0;for(let r of e)r.skipped?n++:r.error&&t++;return{results:e,totalDurationMs:r,errorCount:t,skippedCount:n}}})}e.s(["runAllEnrichers",()=>n])},28488,e=>{"use strict";var r=e.i(45015),t=e.i(28753),n=e.i(84234),a=e.i(7420),s=e.i(54214),o=e.i(26287);e.i(14214);var i=e.i(88107),u=e.i(39864);async function c(e,r,l,f,d=!1,p,m){try{await (0,t.ensureEvalsLoaded)();let c=(0,n.getSubagentScopedEnrichers)(p).find(e=>e.name===f);if(!c)return{ok:!1,error:`Enricher "${f}" not found for subagent type "${p??"any"}"`};let g=`${r}/agent-${l}`,h=await (0,i.hashSubagentFile)(e,r,l);if(!d&&h){let r=(0,i.hashItemCode)(c.fn),t=await (0,u.getPerItemCacheWithHook)("enrichments",e,g,c.name,r,h);if(t)return{ok:!0,result:t.value}}let{entries:y,rawLines:E}=await (0,s.getCachedSessionLog)(e,r),S=(0,o.calculateLogStats)(y),b=(0,s.extractSubagentMeta)(y,l),v=p??b?.type,R=m??b?.description,w=(await (0,a.runAllEnrichers)(E,S,e,r,[c],{source:`agent-${l}`,subagentType:v,subagentDescription:R,parentSessionId:r})).results[0];if(!w)return{ok:!1,error:"No result returned from enricher"};if(h){let r=(0,i.hashItemCode)(c.fn);await (0,u.setPerItemCache)("enrichments",e,g,c.name,r,w,h)}return{ok:!0,result:w}}catch(e){return{ok:!1,error:e instanceof Error?e.message:String(e)}}}(0,e.i(95975).ensureServerEntryExports)([c]),(0,r.registerServerReference)(c,"7f180a8dc49dfab5cc7ed62d17e531632545c17a3a",null),e.s(["processSubagentEnrichment",()=>c])}];
3
3
 
4
4
  //# sourceMappingURL=_b8adaa37._.js.map
@@ -1,7 +1,7 @@
1
- module.exports=[63407,4152,e=>{"use strict";var t=e.i(24868),a=e.i(14747),n=e.i(92509);let i="__CLAUDEYE_LOADING_EVALS__",r=!1;async function s(e){try{return await (0,t.access)(e),!0}catch{return!1}}async function l(){let e=process.env.CLAUDEYE_DIST_PATH;if(e){let t=(0,a.resolve)(e,"index.js");if(await s(t))return t}for(let e of[(0,a.resolve)(process.cwd(),"dist","index.js"),(0,a.resolve)(process.cwd(),"node_modules","claudeye","dist","index.js")])if(await s(e))return e;return null}let o=/(?:import\s+(?:[\s\S]*?\s+from\s+)?|export\s+(?:[\s\S]*?\s+from\s+))(['"])(\.\.?\/[^'"]+)\1/g,u=/require\s*\(\s*(['"])(\.\.?\/[^'"]+)\1\s*\)/g,c=".__claudeye_tmp__.mjs";async function f(e,t){let n=(0,a.resolve)(e,t);for(let e of[n,`${n}.js`,`${n}.mjs`,`${n}.ts`,(0,a.resolve)(n,"index.js")])if(await s(e))return e;return null}async function h(e,a){let i=e+".__claudeye_esm_shim__.mjs",r=`import _cjs from '${a}';
1
+ module.exports=[63407,4152,e=>{"use strict";var t=e.i(24868),a=e.i(14747),n=e.i(92509);let i="__CLAUDEYE_LOADING_EVALS__",s=!1;async function r(e){try{return await (0,t.access)(e),!0}catch{return!1}}async function l(){let e=process.env.CLAUDEYE_DIST_PATH;if(e){let t=(0,a.resolve)(e,"index.js");if(await r(t))return t}for(let e of[(0,a.resolve)(process.cwd(),"dist","index.js"),(0,a.resolve)(process.cwd(),"node_modules","claudeye","dist","index.js")])if(await r(e))return e;return null}let o=/(?:import\s+(?:[\s\S]*?\s+from\s+)?|export\s+(?:[\s\S]*?\s+from\s+))(['"])(\.\.?\/[^'"]+)\1/g,u=/require\s*\(\s*(['"])(\.\.?\/[^'"]+)\1\s*\)/g,c=".__claudeye_tmp__.mjs";async function f(e,t){let n=(0,a.resolve)(e,t);for(let e of[n,`${n}.js`,`${n}.mjs`,`${n}.ts`,(0,a.resolve)(n,"index.js")])if(await r(e))return e;return null}async function h(e,a){let i=e+".__claudeye_esm_shim__.mjs",s=`import _cjs from '${a}';
2
2
  export const createApp = _cjs.createApp;
3
3
  export const getQueueCondition = _cjs.getQueueCondition;
4
4
  export const clearQueueCondition = _cjs.clearQueueCondition;
5
- export default _cjs;`;return await (0,t.writeFile)(i,r,"utf-8"),{shimPath:i,shimUrl:(0,n.pathToFileURL)(i).href}}async function m(e,n,i){let r=[e],s=new Set,l=[],m=null;if(i&&n){let e=await h(i,n);l.push(e.shimPath),m=e.shimUrl}for(;r.length>0;){let e=r.shift();if(s.has(e))continue;s.add(e);let n=await (0,t.readFile)(e,"utf-8");m&&(n=n.replace(/from\s+(['"])claudeye\1/g,`from '${m}'`)),i&&(n=n.replace(/require\s*\(\s*(['"])claudeye\1\s*\)/g,`require('${i.replace(/\\/g,"\\\\")}')`));let h=(0,a.dirname)(e),d=new Map;for(let e of[o,u]){let t,i=new RegExp(e.source,e.flags);for(;null!==(t=i.exec(n));){let e=t[2];if(d.has(e))continue;let n=await f(h,e);if(!n)continue;s.has(n)||r.includes(n)||r.push(n);let i=(0,a.relative)(h,n+c).split("\\").join("/");i.startsWith(".")||(i="./"+i),d.set(e,i)}}for(let e of[...d.keys()].sort((e,t)=>t.length-e.length)){let t=d.get(e),a=e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");n=(n=n.replace(RegExp(`'${a}'`,"g"),`'${t}'`)).replace(RegExp(`"${a}"`,"g"),`"${t}"`)}let p=e+c;await (0,t.writeFile)(p,n,"utf-8"),l.push(p)}return l}async function d(){if(r)return;let e=process.env.CLAUDEYE_EVALS_MODULE;if(!e){r=!0;return}let a=globalThis;a[i]=!0;let s=[];try{let t=await l(),a=t?(0,n.pathToFileURL)(t).href:null;s=await m(e,a,t);let i=(0,n.pathToFileURL)(e+c).href;await import(i)}finally{for(let e of(a[i]=!1,s))try{await (0,t.unlink)(e)}catch{}}r=!0}e.s(["ensureEvalsLoaded",()=>d],63407);var p=e.i(46786);function g(){let e=process.env.CLAUDE_PROJECTS_PATH;return e||(0,a.join)((0,p.homedir)(),".claude","projects")}e.s(["getClaudeProjectsPath",()=>g],4152)},99893,637,82754,37573,e=>{"use strict";var t=e.i(54799),a=e.i(24868),n=e.i(14747),i=e.i(4152);let r=null;function s(){if(r)return r;let e=(0,n.resolve)((0,i.getClaudeProjectsPath)());return r=(0,t.createHash)("sha256").update(e).digest("hex").slice(0,8)}let l=new Map;async function o(e,r){let s=(0,i.getClaudeProjectsPath)(),o=(0,n.join)(s,e,`${r}.jsonl`),u=Date.now(),c=l.get(o);if(c&&c.expiresAt>u)return c.hash;let f=await (0,a.stat)(o),h=`${f.mtimeMs}:${f.size}`,m=(0,t.createHash)("sha256").update(h).digest("hex");return l.set(o,{hash:m,expiresAt:u+5e3}),m}async function u(e,r,s){let l=(0,i.getClaudeProjectsPath)(),o=`agent-${s}.jsonl`,u=[(0,n.join)(l,e,o),(0,n.join)(l,e,r,o),(0,n.join)(l,e,r,"subagents",o)];for(let e of(await Promise.allSettled(u.map(e=>(0,a.stat)(e)))))if("fulfilled"===e.status){let a=e.value,n=`${a.mtimeMs}:${a.size}`;return(0,t.createHash)("sha256").update(n).digest("hex")}return""}let c=new WeakMap;function f(e){let a=c.get(e);return a||(a=(0,t.createHash)("sha256").update(e.toString()).digest("hex"),c.set(e,a)),a}e.s(["hashItemCode",()=>f,"hashProjectsPath",()=>s,"hashSessionFile",()=>o,"hashSubagentFile",()=>u],637);var h=e.i(46786);async function m(e,t){let a=Array(e.length),n=0;async function i(){for(;n<e.length;){let t=n++;try{a[t]={status:"fulfilled",value:await e[t]()}}catch(e){a[t]={status:"rejected",reason:e}}}}let r=Array.from({length:Math.min(t,e.length)},()=>i());return await Promise.all(r),a}e.s(["batchAll",()=>m],82754);var d=e.i(38281);let p=(0,n.join)((0,h.homedir)(),".claudeye","cache");class g{basePath;constructor(e){this.basePath=e||p}keyToPath(e){return(0,n.join)(this.basePath,`${e}.json`)}async get(e){try{let t=this.keyToPath(e),n=await (0,a.readFile)(t,"utf-8");return JSON.parse(n)}catch{return null}}async set(e,t,i){try{let r=this.keyToPath(e);await (0,a.mkdir)((0,n.dirname)(r),{recursive:!0}),await (0,a.writeFile)(r,JSON.stringify({value:t,meta:i}),"utf-8")}catch(t){(0,d.logWarn)(`[cache] Write failed for ${e}:`,t instanceof Error?t.message:t)}}async invalidate(e){try{await (0,a.unlink)(this.keyToPath(e))}catch{}}async invalidateByPrefix(e){try{let t=e.split("/"),i=t.pop()||"",r=(0,n.join)(this.basePath,...t),s=(await (0,a.readdir)(r)).filter(e=>e.endsWith(".json")&&e.startsWith(i));await m(s.map(e=>()=>(0,a.unlink)((0,n.join)(r,e)).catch(()=>{})),50)}catch{}}async close(){}async clearAll(){try{await (0,a.rm)(this.basePath,{recursive:!0,force:!0})}catch{}}}let y="__CLAUDEYE_CACHE_BACKEND__";function w(){let e=globalThis;if(e[y])return e[y];let t=new g(process.env.CLAUDEYE_CACHE_PATH||void 0);return e[y]=t,t}function _(e,t,a,n){let i=s();return`${i}/${e}/${t}/${a}/item/${n}`}async function $(e,t,a,n,i,r){let s=w();try{let l=await s.get(_(e,t,a,n));if(!l)return null;let u=l.meta,c=r??await o(t,a);if(u.contentHash!==c||u.itemCodeHash!==i)return null;return{value:l.value,meta:u,cached:!0}}catch{return null}}async function j(e,t,a,n,i,r,s){let l=w();try{let u=s??await o(t,a);await l.set(_(e,t,a,n),r,{cachedAt:new Date().toISOString(),contentHash:u,itemCodeHash:i})}catch(i){(0,d.logWarn)(`[cache] setPerItemCache failed for ${e}/${t}/${a}/${n}:`,i instanceof Error?i.message:i)}}async function C(t,a,n,i,r,s){let l=await $(t,a,n,i,r,s);if(!l)return null;if("evals"!==t&&"enrichments"!==t)return l;let{getCacheInvalidationHook:o}=await e.A(76590),u=o();if(!u)return l;let c={itemName:i,itemKind:t,cachedAt:l.meta.cachedAt,contentHash:l.meta.contentHash,itemCodeHash:l.meta.itemCodeHash,projectName:a,sessionId:n,cachedValue:l.value};try{if(await u(c))return await P(t,a,n,i),null}catch{}return l}async function v(e,t,a,n){let i=w();try{let r=await i.get(_(e,t,a,n));if(!r)return null;return r.meta}catch{return null}}async function P(e,t,a,n){let i=w();try{await i.invalidate(_(e,t,a,n))}catch{}}async function x(e,t,a,n){let i=w();try{let r=_("conditions",e,t,"__queueCondition__"),s=await i.get(r);if(!s)return null;let l=s.meta;if(l.contentHash!==n||l.conditionCodeHash!==a)return null;return{result:s.value.result,cached:!0}}catch{return null}}async function A(e,t,a,n,i){let r=w();try{let s=_("conditions",e,t,"__queueCondition__");await r.set(s,{result:n},{cachedAt:new Date().toISOString(),contentHash:i,conditionCodeHash:a})}catch(a){(0,d.logWarn)(`[cache] setConditionCache failed for ${e}/${t}:`,a instanceof Error?a.message:a)}}e.s(["getConditionCache",()=>x,"getPerItemCacheMeta",()=>v,"getPerItemCacheWithHook",()=>C,"setConditionCache",()=>A,"setPerItemCache",()=>j],37573),e.s([],99893)},43955,83620,64774,34741,e=>{"use strict";var t=e.i(24868),a=e.i(14747),n=e.i(4152);async function i(e,n,i,r){let s=`agent-${r}.jsonl`;for(let r of[(0,a.join)(e,n,s),(0,a.join)(e,n,i,s),(0,a.join)(e,n,i,"subagents",s)])if(!(0,a.relative)(e,r).startsWith(".."))try{return await (0,t.access)(r),r}catch(e){if("ENOENT"!==e.code)continue}return null}function r(e,t,a){let n=new Map,i=new Map,r=a?.maxSize;return async(...a)=>{let s=JSON.stringify(a),l=n.get(s);if(l&&Date.now()<l.expiry)return r&&(n.delete(s),n.set(s,l)),l.data;let o=i.get(s);if(o)return o;let u=e(...a).then(e=>{if(i.delete(s),r&&n.size>=r){let e=n.keys().next().value;n.delete(e)}return n.set(s,{data:e,expiry:Date.now()+1e3*t}),e},e=>{throw i.delete(s),e});return i.set(s,u),u}}function s(e){return new Intl.DateTimeFormat("en-US",{month:"short",day:"numeric",year:"numeric",hour:"numeric",minute:"2-digit",hour12:!0}).format(e)}function l(e){if(e<1e3)return`${e}ms`;let t=e/1e3;if(t<60)return`${t.toFixed(1)}s`;let a=Math.floor(t/60);if(a>=60){let e=Math.floor(a/60);return`${e}h ${a%60}m`}let n=(t%60).toFixed(0);return`${a}m ${n}s`}function o(e){let t=s(e),a=e.getMilliseconds().toString().padStart(3,"0");return`${t}.${a}`}function u(e,t,a,n){return{_source:n,uuid:e.uuid||"",parentUuid:e.parentUuid??null,timestamp:t,timestampMs:a.getTime(),timestampFormatted:o(a)}}async function c(e,t){let a=e.split("\n").filter(e=>""!==e.trim()),n=new Map,i=[],r=[],s=new Set,c=!1;for(let e=0;e<a.length;e++){let l;e>0&&e%200==0&&await new Promise(e=>setImmediate(e));let o=a[e];try{l=JSON.parse(o)}catch{continue}let f={...l,_source:t};r.push(f);let h=l.type,m=l.timestamp;if(!m)continue;let d=new Date(m),p=d.getTime();if("user"===h){let e=l.message;if(Array.isArray(e?.content)){let t=e.content;if(t.some(e=>"tool_result"===e.type)){let e=l.toolUseResult,a="string"==typeof e?.agentId?e.agentId:void 0;for(let e of(a&&/^[a-f0-9]+$/.test(a)&&s.add(a),t)){if("tool_result"!==e.type)continue;let t=e.tool_use_id;if(!t)continue;let{text:i,images:r}=function(e){let t=e.content;if("string"==typeof t)return{text:t};if(Array.isArray(t)){let e=t.filter(e=>"text"===e.type).map(e=>e.text),a=t.filter(e=>"image"===e.type).map(e=>{let t=e.source;return{base64:t.data,mediaType:t.media_type}}).filter(e=>e.base64&&e.mediaType);return{text:e.length>0?e.join("\n"):void 0,images:a.length>0?a:void 0}}return{}}(e);n.set(t,{timestamp:m,timestampMs:p,content:i,images:r,agentId:a})}continue}}let a="string"==typeof e?.content?e.content:"";i.push({type:"user",...u(l,m,d,t),message:{role:"user",content:a}});continue}if("assistant"===h){let e=l.message,a=[];if(Array.isArray(e?.content)&&(a=e.content.filter(e=>["text","tool_use","thinking"].includes(e.type)).map(e=>{if("text"===e.type)return{type:"text",text:e.text};if("tool_use"===e.type){let t=e.input;return{type:"tool_use",id:e.id,name:e.name,input:e.input??{},..."Task"===e.name&&t?{subagentType:t.subagent_type,subagentDescription:t.description}:{}}}return{type:"thinking",thinking:e.thinking,signature:e.signature}})),0===a.length)continue;i.push({type:"assistant",...u(l,m,d,t),message:{role:"assistant",content:a,model:e?.model}});continue}if("file-history-snapshot"===h||"progress"===h||"system"===h){i.push({type:h,...u(l,m,d,t),raw:{...l}});continue}if("queue-operation"===h){let e=c?"Session Resumed":"Session Started";c=!0,i.push({type:"queue-operation",...u(l,m,d,t),label:e});continue}}let f=0;for(let e of i)if("assistant"===e.type)for(let t of(++f%200==0&&await new Promise(e=>setImmediate(e)),e.message.content)){if("tool_use"!==t.type)continue;let a=n.get(t.id);if(!a)continue;let i=new Date(a.timestamp),r=a.timestampMs-e.timestampMs;t.result={timestamp:a.timestamp,timestampFormatted:o(i),content:a.content,images:a.images,durationMs:r,durationFormatted:l(r)},a.agentId&&(t.subagentId=a.agentId)}return i.length>500&&await new Promise(e=>setImmediate(e)),i.sort((e,t)=>e.timestampMs-t.timestampMs),{entries:i,rawLines:r,subagentIds:Array.from(s)}}async function f(e,r){let s=(0,n.getClaudeProjectsPath)(),l=(0,a.join)(s,e,`${r}.jsonl`),o=await (0,t.readFile)(l,"utf-8"),{entries:u,rawLines:f,subagentIds:h}=await c(o,"session");if(0===h.length)return{entries:u,rawLines:f,subagentIds:[]};let m=await Promise.allSettled(h.map(async a=>{let n=`agent-${a}`,l=await i(s,e,r,a);if(!l)return null;let o=await (0,t.readFile)(l,"utf-8"),{entries:u,rawLines:f}=await c(o,n);return{entries:u,rawLines:f}})),d=[...u],p=[...f];for(let e of m)"fulfilled"===e.status&&e.value&&(d.push(...e.value.entries),p.push(...e.value.rawLines));return d.length>500&&await new Promise(e=>setImmediate(e)),d.sort((e,t)=>e.timestampMs-t.timestampMs),{entries:d,rawLines:p,subagentIds:h}}e.s(["runtimeCache",()=>r],83620),e.s(["formatDate",()=>s],64774);let h=r((e,t)=>f(e,t),60,{maxSize:50});function m(e){let t=0,a=0,n=0,i=0,r=0,s=new Set;for(let l of e)if("user"===l.type&&t++,"queue-operation"===l.type&&r++,"assistant"===l.type){for(let e of(a++,l.message.content))"tool_use"===e.type&&("Task"===e.name&&(e.subagentType||e.subagentId)?i++:n++);l.message.model&&s.add(l.message.model)}let o="";return e.length>=2&&(o=l(e[e.length-1].timestampMs-e[0].timestampMs)),{turnCount:r,userCount:t,assistantCount:a,toolCallCount:n,subagentCount:i,duration:o,models:Array.from(s)}}e.s(["getCachedSessionLog",0,h],43955),e.s(["calculateLogStats",()=>m],34741)}];
5
+ export default _cjs;`;return await (0,t.writeFile)(i,s,"utf-8"),{shimPath:i,shimUrl:(0,n.pathToFileURL)(i).href}}async function m(e,n,i){let s=[e],r=new Set,l=[],m=null;if(i&&n){let e=await h(i,n);l.push(e.shimPath),m=e.shimUrl}for(;s.length>0;){let e=s.shift();if(r.has(e))continue;r.add(e);let n=await (0,t.readFile)(e,"utf-8");m&&(n=n.replace(/from\s+(['"])claudeye\1/g,`from '${m}'`)),i&&(n=n.replace(/require\s*\(\s*(['"])claudeye\1\s*\)/g,`require('${i.replace(/\\/g,"\\\\")}')`));let h=(0,a.dirname)(e),d=new Map;for(let e of[o,u]){let t,i=new RegExp(e.source,e.flags);for(;null!==(t=i.exec(n));){let e=t[2];if(d.has(e))continue;let n=await f(h,e);if(!n)continue;r.has(n)||s.includes(n)||s.push(n);let i=(0,a.relative)(h,n+c).split("\\").join("/");i.startsWith(".")||(i="./"+i),d.set(e,i)}}for(let e of[...d.keys()].sort((e,t)=>t.length-e.length)){let t=d.get(e),a=e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");n=(n=n.replace(RegExp(`'${a}'`,"g"),`'${t}'`)).replace(RegExp(`"${a}"`,"g"),`"${t}"`)}let p=e+c;await (0,t.writeFile)(p,n,"utf-8"),l.push(p)}return l}async function d(){if(s)return;let e=process.env.CLAUDEYE_EVALS_MODULE;if(!e){s=!0;return}let a=globalThis;a[i]=!0;let r=[];try{let t=await l(),a=t?(0,n.pathToFileURL)(t).href:null;r=await m(e,a,t);let i=(0,n.pathToFileURL)(e+c).href;await import(i)}finally{for(let e of(a[i]=!1,r))try{await (0,t.unlink)(e)}catch{}}s=!0}e.s(["ensureEvalsLoaded",()=>d],63407);var p=e.i(46786);function g(){let e=process.env.CLAUDE_PROJECTS_PATH;return e||(0,a.join)((0,p.homedir)(),".claude","projects")}e.s(["getClaudeProjectsPath",()=>g],4152)},99893,637,82754,37573,e=>{"use strict";var t=e.i(54799),a=e.i(24868),n=e.i(14747),i=e.i(4152);let s=null;function r(){if(s)return s;let e=(0,n.resolve)((0,i.getClaudeProjectsPath)());return s=(0,t.createHash)("sha256").update(e).digest("hex").slice(0,8)}let l=new Map;async function o(e,s){let r=(0,i.getClaudeProjectsPath)(),o=(0,n.join)(r,e,`${s}.jsonl`),u=Date.now(),c=l.get(o);if(c&&c.expiresAt>u)return c.hash;let f=await (0,a.stat)(o),h=`${f.mtimeMs}:${f.size}`,m=(0,t.createHash)("sha256").update(h).digest("hex");return l.set(o,{hash:m,expiresAt:u+5e3}),m}async function u(e,s,r){let l=(0,i.getClaudeProjectsPath)(),o=`agent-${r}.jsonl`,u=[(0,n.join)(l,e,o),(0,n.join)(l,e,s,o),(0,n.join)(l,e,s,"subagents",o)];for(let e of(await Promise.allSettled(u.map(e=>(0,a.stat)(e)))))if("fulfilled"===e.status){let a=e.value,n=`${a.mtimeMs}:${a.size}`;return(0,t.createHash)("sha256").update(n).digest("hex")}return""}let c=new WeakMap;function f(e){let a=c.get(e);return a||(a=(0,t.createHash)("sha256").update(e.toString()).digest("hex"),c.set(e,a)),a}e.s(["hashItemCode",()=>f,"hashProjectsPath",()=>r,"hashSessionFile",()=>o,"hashSubagentFile",()=>u],637);var h=e.i(46786);async function m(e,t){let a=Array(e.length),n=0;async function i(){for(;n<e.length;){let t=n++;try{a[t]={status:"fulfilled",value:await e[t]()}}catch(e){a[t]={status:"rejected",reason:e}}}}let s=Array.from({length:Math.min(t,e.length)},()=>i());return await Promise.all(s),a}e.s(["batchAll",()=>m],82754);var d=e.i(38281);let p=(0,n.join)((0,h.homedir)(),".claudeye","cache");class g{basePath;constructor(e){this.basePath=e||p}keyToPath(e){return(0,n.join)(this.basePath,`${e}.json`)}async get(e){try{let t=this.keyToPath(e),n=await (0,a.readFile)(t,"utf-8");return JSON.parse(n)}catch{return null}}async set(e,t,i){try{let s=this.keyToPath(e);await (0,a.mkdir)((0,n.dirname)(s),{recursive:!0}),await (0,a.writeFile)(s,JSON.stringify({value:t,meta:i}),"utf-8")}catch(t){(0,d.logWarn)(`[cache] Write failed for ${e}:`,t instanceof Error?t.message:t)}}async invalidate(e){try{await (0,a.unlink)(this.keyToPath(e))}catch{}}async invalidateByPrefix(e){try{let t=e.split("/"),i=t.pop()||"",s=(0,n.join)(this.basePath,...t),r=(await (0,a.readdir)(s)).filter(e=>e.endsWith(".json")&&e.startsWith(i));await m(r.map(e=>()=>(0,a.unlink)((0,n.join)(s,e)).catch(()=>{})),50)}catch{}}async close(){}async clearAll(){try{await (0,a.rm)(this.basePath,{recursive:!0,force:!0})}catch{}}}let y="__CLAUDEYE_CACHE_BACKEND__";function w(){let e=globalThis;if(e[y])return e[y];let t=new g(process.env.CLAUDEYE_CACHE_PATH||void 0);return e[y]=t,t}function _(e,t,a,n){let i=r();return`${i}/${e}/${t}/${a}/item/${n}`}async function $(e,t,a,n,i,s){let r=w();try{let l=await r.get(_(e,t,a,n));if(!l)return null;let u=l.meta,c=s??await o(t,a);if(u.contentHash!==c||u.itemCodeHash!==i)return null;return{value:l.value,meta:u,cached:!0}}catch{return null}}async function j(e,t,a,n,i,s,r){let l=w();try{let u=r??await o(t,a);await l.set(_(e,t,a,n),s,{cachedAt:new Date().toISOString(),contentHash:u,itemCodeHash:i})}catch(i){(0,d.logWarn)(`[cache] setPerItemCache failed for ${e}/${t}/${a}/${n}:`,i instanceof Error?i.message:i)}}async function C(t,a,n,i,s,r){let l=await $(t,a,n,i,s,r);if(!l)return null;if("evals"!==t&&"enrichments"!==t)return l;let{getCacheInvalidationHook:o}=await e.A(76590),u=o();if(!u)return l;let c={itemName:i,itemKind:t,cachedAt:l.meta.cachedAt,contentHash:l.meta.contentHash,itemCodeHash:l.meta.itemCodeHash,projectName:a,sessionId:n,cachedValue:l.value};try{if(await u(c))return await x(t,a,n,i),null}catch{}return l}async function v(e,t,a,n){let i=w();try{let s=await i.get(_(e,t,a,n));if(!s)return null;return s.meta}catch{return null}}async function x(e,t,a,n){let i=w();try{await i.invalidate(_(e,t,a,n))}catch{}}async function P(e,t,a,n){let i=w();try{let s=_("conditions",e,t,"__queueCondition__"),r=await i.get(s);if(!r)return null;let l=r.meta;if(l.contentHash!==n||l.conditionCodeHash!==a)return null;return{result:r.value.result,cached:!0}}catch{return null}}async function A(e,t,a,n,i){let s=w();try{let r=_("conditions",e,t,"__queueCondition__");await s.set(r,{result:n},{cachedAt:new Date().toISOString(),contentHash:i,conditionCodeHash:a})}catch(a){(0,d.logWarn)(`[cache] setConditionCache failed for ${e}/${t}:`,a instanceof Error?a.message:a)}}e.s(["getConditionCache",()=>P,"getPerItemCacheMeta",()=>v,"getPerItemCacheWithHook",()=>C,"setConditionCache",()=>A,"setPerItemCache",()=>j],37573),e.s([],99893)},43955,83620,64774,34741,e=>{"use strict";var t=e.i(24868),a=e.i(14747),n=e.i(4152);async function i(e,n,i,s){let r=`agent-${s}.jsonl`;for(let s of[(0,a.join)(e,n,r),(0,a.join)(e,n,i,r),(0,a.join)(e,n,i,"subagents",r)])if(!(0,a.relative)(e,s).startsWith(".."))try{return await (0,t.access)(s),s}catch(e){if("ENOENT"!==e.code)continue}return null}function s(e,t,a){let n=new Map,i=new Map,s=a?.maxSize;return async(...a)=>{let r=JSON.stringify(a),l=n.get(r);if(l&&Date.now()<l.expiry)return s&&(n.delete(r),n.set(r,l)),l.data;let o=i.get(r);if(o)return o;let u=e(...a).then(e=>{if(i.delete(r),s&&n.size>=s){let e=n.keys().next().value;n.delete(e)}return n.set(r,{data:e,expiry:Date.now()+1e3*t}),e},e=>{throw i.delete(r),e});return i.set(r,u),u}}function r(e){return new Intl.DateTimeFormat("en-US",{month:"short",day:"numeric",year:"numeric",hour:"numeric",minute:"2-digit",hour12:!0}).format(e)}function l(e){if(e<1e3)return`${e}ms`;let t=e/1e3;if(t<60)return`${t.toFixed(1)}s`;let a=Math.floor(t/60);if(a>=60){let e=Math.floor(a/60);return`${e}h ${a%60}m`}let n=(t%60).toFixed(0);return`${a}m ${n}s`}function o(e){let t=r(e),a=e.getMilliseconds().toString().padStart(3,"0");return`${t}.${a}`}function u(e,t,a,n){return{_source:n,uuid:e.uuid||"",parentUuid:e.parentUuid??null,timestamp:t,timestampMs:a.getTime(),timestampFormatted:o(a)}}async function c(e,t){let a=e.split("\n").filter(e=>""!==e.trim()),n=new Map,i=[],s=[],r=new Set,c=!1;for(let e=0;e<a.length;e++){let l;e>0&&e%200==0&&await new Promise(e=>setImmediate(e));let o=a[e];try{l=JSON.parse(o)}catch{continue}let f={...l,_source:t};s.push(f);let h=l.type,m=l.timestamp;if(!m)continue;let d=new Date(m),p=d.getTime();if("user"===h){let e=l.message;if(Array.isArray(e?.content)){let t=e.content;if(t.some(e=>"tool_result"===e.type)){let e=l.toolUseResult,a="string"==typeof e?.agentId?e.agentId:void 0;for(let e of(a&&/^[a-f0-9]+$/.test(a)&&r.add(a),t)){if("tool_result"!==e.type)continue;let t=e.tool_use_id;if(!t)continue;let{text:i,images:s}=function(e){let t=e.content;if("string"==typeof t)return{text:t};if(Array.isArray(t)){let e=t.filter(e=>"text"===e.type).map(e=>e.text),a=t.filter(e=>"image"===e.type).map(e=>{let t=e.source;return{base64:t.data,mediaType:t.media_type}}).filter(e=>e.base64&&e.mediaType);return{text:e.length>0?e.join("\n"):void 0,images:a.length>0?a:void 0}}return{}}(e);n.set(t,{timestamp:m,timestampMs:p,content:i,images:s,agentId:a})}continue}}let a="string"==typeof e?.content?e.content:"";i.push({type:"user",...u(l,m,d,t),message:{role:"user",content:a}});continue}if("assistant"===h){let e=l.message,a=[];if(Array.isArray(e?.content)&&(a=e.content.filter(e=>["text","tool_use","thinking"].includes(e.type)).map(e=>{if("text"===e.type)return{type:"text",text:e.text};if("tool_use"===e.type){let t=e.input;return{type:"tool_use",id:e.id,name:e.name,input:e.input??{},..."Task"===e.name&&t?{subagentType:t.subagent_type,subagentDescription:t.description}:{}}}return{type:"thinking",thinking:e.thinking,signature:e.signature}})),0===a.length)continue;i.push({type:"assistant",...u(l,m,d,t),message:{role:"assistant",content:a,model:e?.model}});continue}if("file-history-snapshot"===h||"progress"===h||"system"===h){i.push({type:h,...u(l,m,d,t),raw:{...l}});continue}if("queue-operation"===h){let e=c?"Session Resumed":"Session Started";c=!0,i.push({type:"queue-operation",...u(l,m,d,t),label:e});continue}}let f=0;for(let e of i)if("assistant"===e.type)for(let t of(++f%200==0&&await new Promise(e=>setImmediate(e)),e.message.content)){if("tool_use"!==t.type)continue;let a=n.get(t.id);if(!a)continue;let i=new Date(a.timestamp),s=a.timestampMs-e.timestampMs;t.result={timestamp:a.timestamp,timestampFormatted:o(i),content:a.content,images:a.images,durationMs:s,durationFormatted:l(s)},a.agentId&&(t.subagentId=a.agentId)}return i.length>500&&await new Promise(e=>setImmediate(e)),i.sort((e,t)=>e.timestampMs-t.timestampMs),{entries:i,rawLines:s,subagentIds:Array.from(r)}}function f(e,t){for(let a of e)if("assistant"===a.type){for(let e of a.message.content)if("tool_use"===e.type&&"Task"===e.name&&e.subagentId===t)return{type:e.subagentType,description:e.subagentDescription}}}async function h(e,s){let r=(0,n.getClaudeProjectsPath)(),l=(0,a.join)(r,e,`${s}.jsonl`),o=await (0,t.readFile)(l,"utf-8"),{entries:u,rawLines:f,subagentIds:h}=await c(o,"session");if(0===h.length)return{entries:u,rawLines:f,subagentIds:[]};let m=await Promise.allSettled(h.map(async a=>{let n=`agent-${a}`,l=await i(r,e,s,a);if(!l)return null;let o=await (0,t.readFile)(l,"utf-8"),{entries:u,rawLines:f}=await c(o,n);return{entries:u,rawLines:f}})),d=[...u],p=[...f];for(let e of m)"fulfilled"===e.status&&e.value&&(d.push(...e.value.entries),p.push(...e.value.rawLines));return d.length>500&&await new Promise(e=>setImmediate(e)),d.sort((e,t)=>e.timestampMs-t.timestampMs),{entries:d,rawLines:p,subagentIds:h}}e.s(["runtimeCache",()=>s],83620),e.s(["formatDate",()=>r],64774);let m=s((e,t)=>h(e,t),60,{maxSize:50});function d(e){let t=0,a=0,n=0,i=0,s=0,r=new Set;for(let l of e)if("user"===l.type&&t++,"queue-operation"===l.type&&s++,"assistant"===l.type){for(let e of(a++,l.message.content))"tool_use"===e.type&&("Task"===e.name&&(e.subagentType||e.subagentId)?i++:n++);l.message.model&&r.add(l.message.model)}let o="";return e.length>=2&&(o=l(e[e.length-1].timestampMs-e[0].timestampMs)),{turnCount:s,userCount:t,assistantCount:a,toolCallCount:n,subagentCount:i,duration:o,models:Array.from(r)}}e.s(["extractSubagentMeta",()=>f,"getCachedSessionLog",0,m],43955),e.s(["calculateLogStats",()=>d],34741)}];
6
6
 
7
7
  //# sourceMappingURL=lib_6cff0ca5._.js.map
@@ -1,7 +1,7 @@
1
- module.exports=[63407,4152,e=>{"use strict";var t=e.i(24868),a=e.i(14747),n=e.i(92509);let i="__CLAUDEYE_LOADING_EVALS__",r=!1;async function s(e){try{return await (0,t.access)(e),!0}catch{return!1}}async function l(){let e=process.env.CLAUDEYE_DIST_PATH;if(e){let t=(0,a.resolve)(e,"index.js");if(await s(t))return t}for(let e of[(0,a.resolve)(process.cwd(),"dist","index.js"),(0,a.resolve)(process.cwd(),"node_modules","claudeye","dist","index.js")])if(await s(e))return e;return null}let o=/(?:import\s+(?:[\s\S]*?\s+from\s+)?|export\s+(?:[\s\S]*?\s+from\s+))(['"])(\.\.?\/[^'"]+)\1/g,u=/require\s*\(\s*(['"])(\.\.?\/[^'"]+)\1\s*\)/g,c=".__claudeye_tmp__.mjs";async function f(e,t){let n=(0,a.resolve)(e,t);for(let e of[n,`${n}.js`,`${n}.mjs`,`${n}.ts`,(0,a.resolve)(n,"index.js")])if(await s(e))return e;return null}async function h(e,a){let i=e+".__claudeye_esm_shim__.mjs",r=`import _cjs from '${a}';
1
+ module.exports=[63407,4152,e=>{"use strict";var t=e.i(24868),a=e.i(14747),n=e.i(92509);let i="__CLAUDEYE_LOADING_EVALS__",s=!1;async function r(e){try{return await (0,t.access)(e),!0}catch{return!1}}async function l(){let e=process.env.CLAUDEYE_DIST_PATH;if(e){let t=(0,a.resolve)(e,"index.js");if(await r(t))return t}for(let e of[(0,a.resolve)(process.cwd(),"dist","index.js"),(0,a.resolve)(process.cwd(),"node_modules","claudeye","dist","index.js")])if(await r(e))return e;return null}let o=/(?:import\s+(?:[\s\S]*?\s+from\s+)?|export\s+(?:[\s\S]*?\s+from\s+))(['"])(\.\.?\/[^'"]+)\1/g,u=/require\s*\(\s*(['"])(\.\.?\/[^'"]+)\1\s*\)/g,c=".__claudeye_tmp__.mjs";async function f(e,t){let n=(0,a.resolve)(e,t);for(let e of[n,`${n}.js`,`${n}.mjs`,`${n}.ts`,(0,a.resolve)(n,"index.js")])if(await r(e))return e;return null}async function h(e,a){let i=e+".__claudeye_esm_shim__.mjs",s=`import _cjs from '${a}';
2
2
  export const createApp = _cjs.createApp;
3
3
  export const getQueueCondition = _cjs.getQueueCondition;
4
4
  export const clearQueueCondition = _cjs.clearQueueCondition;
5
- export default _cjs;`;return await (0,t.writeFile)(i,r,"utf-8"),{shimPath:i,shimUrl:(0,n.pathToFileURL)(i).href}}async function m(e,n,i){let r=[e],s=new Set,l=[],m=null;if(i&&n){let e=await h(i,n);l.push(e.shimPath),m=e.shimUrl}for(;r.length>0;){let e=r.shift();if(s.has(e))continue;s.add(e);let n=await (0,t.readFile)(e,"utf-8");m&&(n=n.replace(/from\s+(['"])claudeye\1/g,`from '${m}'`)),i&&(n=n.replace(/require\s*\(\s*(['"])claudeye\1\s*\)/g,`require('${i.replace(/\\/g,"\\\\")}')`));let h=(0,a.dirname)(e),d=new Map;for(let e of[o,u]){let t,i=new RegExp(e.source,e.flags);for(;null!==(t=i.exec(n));){let e=t[2];if(d.has(e))continue;let n=await f(h,e);if(!n)continue;s.has(n)||r.includes(n)||r.push(n);let i=(0,a.relative)(h,n+c).split("\\").join("/");i.startsWith(".")||(i="./"+i),d.set(e,i)}}for(let e of[...d.keys()].sort((e,t)=>t.length-e.length)){let t=d.get(e),a=e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");n=(n=n.replace(RegExp(`'${a}'`,"g"),`'${t}'`)).replace(RegExp(`"${a}"`,"g"),`"${t}"`)}let p=e+c;await (0,t.writeFile)(p,n,"utf-8"),l.push(p)}return l}async function d(){if(r)return;let e=process.env.CLAUDEYE_EVALS_MODULE;if(!e){r=!0;return}let a=globalThis;a[i]=!0;let s=[];try{let t=await l(),a=t?(0,n.pathToFileURL)(t).href:null;s=await m(e,a,t);let i=(0,n.pathToFileURL)(e+c).href;await import(i)}finally{for(let e of(a[i]=!1,s))try{await (0,t.unlink)(e)}catch{}}r=!0}e.s(["ensureEvalsLoaded",()=>d],63407);var p=e.i(46786);function g(){let e=process.env.CLAUDE_PROJECTS_PATH;return e||(0,a.join)((0,p.homedir)(),".claude","projects")}e.s(["getClaudeProjectsPath",()=>g],4152)},43955,83620,64774,34741,e=>{"use strict";var t=e.i(24868),a=e.i(14747),n=e.i(4152);async function i(e,n,i,r){let s=`agent-${r}.jsonl`;for(let r of[(0,a.join)(e,n,s),(0,a.join)(e,n,i,s),(0,a.join)(e,n,i,"subagents",s)])if(!(0,a.relative)(e,r).startsWith(".."))try{return await (0,t.access)(r),r}catch(e){if("ENOENT"!==e.code)continue}return null}function r(e,t,a){let n=new Map,i=new Map,r=a?.maxSize;return async(...a)=>{let s=JSON.stringify(a),l=n.get(s);if(l&&Date.now()<l.expiry)return r&&(n.delete(s),n.set(s,l)),l.data;let o=i.get(s);if(o)return o;let u=e(...a).then(e=>{if(i.delete(s),r&&n.size>=r){let e=n.keys().next().value;n.delete(e)}return n.set(s,{data:e,expiry:Date.now()+1e3*t}),e},e=>{throw i.delete(s),e});return i.set(s,u),u}}function s(e){return new Intl.DateTimeFormat("en-US",{month:"short",day:"numeric",year:"numeric",hour:"numeric",minute:"2-digit",hour12:!0}).format(e)}function l(e){if(e<1e3)return`${e}ms`;let t=e/1e3;if(t<60)return`${t.toFixed(1)}s`;let a=Math.floor(t/60);if(a>=60){let e=Math.floor(a/60);return`${e}h ${a%60}m`}let n=(t%60).toFixed(0);return`${a}m ${n}s`}function o(e){let t=s(e),a=e.getMilliseconds().toString().padStart(3,"0");return`${t}.${a}`}function u(e,t,a,n){return{_source:n,uuid:e.uuid||"",parentUuid:e.parentUuid??null,timestamp:t,timestampMs:a.getTime(),timestampFormatted:o(a)}}async function c(e,t){let a=e.split("\n").filter(e=>""!==e.trim()),n=new Map,i=[],r=[],s=new Set,c=!1;for(let e=0;e<a.length;e++){let l;e>0&&e%200==0&&await new Promise(e=>setImmediate(e));let o=a[e];try{l=JSON.parse(o)}catch{continue}let f={...l,_source:t};r.push(f);let h=l.type,m=l.timestamp;if(!m)continue;let d=new Date(m),p=d.getTime();if("user"===h){let e=l.message;if(Array.isArray(e?.content)){let t=e.content;if(t.some(e=>"tool_result"===e.type)){let e=l.toolUseResult,a="string"==typeof e?.agentId?e.agentId:void 0;for(let e of(a&&/^[a-f0-9]+$/.test(a)&&s.add(a),t)){if("tool_result"!==e.type)continue;let t=e.tool_use_id;if(!t)continue;let{text:i,images:r}=function(e){let t=e.content;if("string"==typeof t)return{text:t};if(Array.isArray(t)){let e=t.filter(e=>"text"===e.type).map(e=>e.text),a=t.filter(e=>"image"===e.type).map(e=>{let t=e.source;return{base64:t.data,mediaType:t.media_type}}).filter(e=>e.base64&&e.mediaType);return{text:e.length>0?e.join("\n"):void 0,images:a.length>0?a:void 0}}return{}}(e);n.set(t,{timestamp:m,timestampMs:p,content:i,images:r,agentId:a})}continue}}let a="string"==typeof e?.content?e.content:"";i.push({type:"user",...u(l,m,d,t),message:{role:"user",content:a}});continue}if("assistant"===h){let e=l.message,a=[];if(Array.isArray(e?.content)&&(a=e.content.filter(e=>["text","tool_use","thinking"].includes(e.type)).map(e=>{if("text"===e.type)return{type:"text",text:e.text};if("tool_use"===e.type){let t=e.input;return{type:"tool_use",id:e.id,name:e.name,input:e.input??{},..."Task"===e.name&&t?{subagentType:t.subagent_type,subagentDescription:t.description}:{}}}return{type:"thinking",thinking:e.thinking,signature:e.signature}})),0===a.length)continue;i.push({type:"assistant",...u(l,m,d,t),message:{role:"assistant",content:a,model:e?.model}});continue}if("file-history-snapshot"===h||"progress"===h||"system"===h){i.push({type:h,...u(l,m,d,t),raw:{...l}});continue}if("queue-operation"===h){let e=c?"Session Resumed":"Session Started";c=!0,i.push({type:"queue-operation",...u(l,m,d,t),label:e});continue}}let f=0;for(let e of i)if("assistant"===e.type)for(let t of(++f%200==0&&await new Promise(e=>setImmediate(e)),e.message.content)){if("tool_use"!==t.type)continue;let a=n.get(t.id);if(!a)continue;let i=new Date(a.timestamp),r=a.timestampMs-e.timestampMs;t.result={timestamp:a.timestamp,timestampFormatted:o(i),content:a.content,images:a.images,durationMs:r,durationFormatted:l(r)},a.agentId&&(t.subagentId=a.agentId)}return i.length>500&&await new Promise(e=>setImmediate(e)),i.sort((e,t)=>e.timestampMs-t.timestampMs),{entries:i,rawLines:r,subagentIds:Array.from(s)}}async function f(e,r){let s=(0,n.getClaudeProjectsPath)(),l=(0,a.join)(s,e,`${r}.jsonl`),o=await (0,t.readFile)(l,"utf-8"),{entries:u,rawLines:f,subagentIds:h}=await c(o,"session");if(0===h.length)return{entries:u,rawLines:f,subagentIds:[]};let m=await Promise.allSettled(h.map(async a=>{let n=`agent-${a}`,l=await i(s,e,r,a);if(!l)return null;let o=await (0,t.readFile)(l,"utf-8"),{entries:u,rawLines:f}=await c(o,n);return{entries:u,rawLines:f}})),d=[...u],p=[...f];for(let e of m)"fulfilled"===e.status&&e.value&&(d.push(...e.value.entries),p.push(...e.value.rawLines));return d.length>500&&await new Promise(e=>setImmediate(e)),d.sort((e,t)=>e.timestampMs-t.timestampMs),{entries:d,rawLines:p,subagentIds:h}}e.s(["runtimeCache",()=>r],83620),e.s(["formatDate",()=>s],64774);let h=r((e,t)=>f(e,t),60,{maxSize:50});function m(e){let t=0,a=0,n=0,i=0,r=0,s=new Set;for(let l of e)if("user"===l.type&&t++,"queue-operation"===l.type&&r++,"assistant"===l.type){for(let e of(a++,l.message.content))"tool_use"===e.type&&("Task"===e.name&&(e.subagentType||e.subagentId)?i++:n++);l.message.model&&s.add(l.message.model)}let o="";return e.length>=2&&(o=l(e[e.length-1].timestampMs-e[0].timestampMs)),{turnCount:r,userCount:t,assistantCount:a,toolCallCount:n,subagentCount:i,duration:o,models:Array.from(s)}}e.s(["getCachedSessionLog",0,h],43955),e.s(["calculateLogStats",()=>m],34741)},99893,637,82754,37573,e=>{"use strict";var t=e.i(54799),a=e.i(24868),n=e.i(14747),i=e.i(4152);let r=null;function s(){if(r)return r;let e=(0,n.resolve)((0,i.getClaudeProjectsPath)());return r=(0,t.createHash)("sha256").update(e).digest("hex").slice(0,8)}let l=new Map;async function o(e,r){let s=(0,i.getClaudeProjectsPath)(),o=(0,n.join)(s,e,`${r}.jsonl`),u=Date.now(),c=l.get(o);if(c&&c.expiresAt>u)return c.hash;let f=await (0,a.stat)(o),h=`${f.mtimeMs}:${f.size}`,m=(0,t.createHash)("sha256").update(h).digest("hex");return l.set(o,{hash:m,expiresAt:u+5e3}),m}async function u(e,r,s){let l=(0,i.getClaudeProjectsPath)(),o=`agent-${s}.jsonl`,u=[(0,n.join)(l,e,o),(0,n.join)(l,e,r,o),(0,n.join)(l,e,r,"subagents",o)];for(let e of(await Promise.allSettled(u.map(e=>(0,a.stat)(e)))))if("fulfilled"===e.status){let a=e.value,n=`${a.mtimeMs}:${a.size}`;return(0,t.createHash)("sha256").update(n).digest("hex")}return""}let c=new WeakMap;function f(e){let a=c.get(e);return a||(a=(0,t.createHash)("sha256").update(e.toString()).digest("hex"),c.set(e,a)),a}e.s(["hashItemCode",()=>f,"hashProjectsPath",()=>s,"hashSessionFile",()=>o,"hashSubagentFile",()=>u],637);var h=e.i(46786);async function m(e,t){let a=Array(e.length),n=0;async function i(){for(;n<e.length;){let t=n++;try{a[t]={status:"fulfilled",value:await e[t]()}}catch(e){a[t]={status:"rejected",reason:e}}}}let r=Array.from({length:Math.min(t,e.length)},()=>i());return await Promise.all(r),a}e.s(["batchAll",()=>m],82754);var d=e.i(38281);let p=(0,n.join)((0,h.homedir)(),".claudeye","cache");class g{basePath;constructor(e){this.basePath=e||p}keyToPath(e){return(0,n.join)(this.basePath,`${e}.json`)}async get(e){try{let t=this.keyToPath(e),n=await (0,a.readFile)(t,"utf-8");return JSON.parse(n)}catch{return null}}async set(e,t,i){try{let r=this.keyToPath(e);await (0,a.mkdir)((0,n.dirname)(r),{recursive:!0}),await (0,a.writeFile)(r,JSON.stringify({value:t,meta:i}),"utf-8")}catch(t){(0,d.logWarn)(`[cache] Write failed for ${e}:`,t instanceof Error?t.message:t)}}async invalidate(e){try{await (0,a.unlink)(this.keyToPath(e))}catch{}}async invalidateByPrefix(e){try{let t=e.split("/"),i=t.pop()||"",r=(0,n.join)(this.basePath,...t),s=(await (0,a.readdir)(r)).filter(e=>e.endsWith(".json")&&e.startsWith(i));await m(s.map(e=>()=>(0,a.unlink)((0,n.join)(r,e)).catch(()=>{})),50)}catch{}}async close(){}async clearAll(){try{await (0,a.rm)(this.basePath,{recursive:!0,force:!0})}catch{}}}let y="__CLAUDEYE_CACHE_BACKEND__";function w(){let e=globalThis;if(e[y])return e[y];let t=new g(process.env.CLAUDEYE_CACHE_PATH||void 0);return e[y]=t,t}function _(e,t,a,n){let i=s();return`${i}/${e}/${t}/${a}/item/${n}`}async function $(e,t,a,n,i,r){let s=w();try{let l=await s.get(_(e,t,a,n));if(!l)return null;let u=l.meta,c=r??await o(t,a);if(u.contentHash!==c||u.itemCodeHash!==i)return null;return{value:l.value,meta:u,cached:!0}}catch{return null}}async function j(e,t,a,n,i,r,s){let l=w();try{let u=s??await o(t,a);await l.set(_(e,t,a,n),r,{cachedAt:new Date().toISOString(),contentHash:u,itemCodeHash:i})}catch(i){(0,d.logWarn)(`[cache] setPerItemCache failed for ${e}/${t}/${a}/${n}:`,i instanceof Error?i.message:i)}}async function C(t,a,n,i,r,s){let l=await $(t,a,n,i,r,s);if(!l)return null;if("evals"!==t&&"enrichments"!==t)return l;let{getCacheInvalidationHook:o}=await e.A(76590),u=o();if(!u)return l;let c={itemName:i,itemKind:t,cachedAt:l.meta.cachedAt,contentHash:l.meta.contentHash,itemCodeHash:l.meta.itemCodeHash,projectName:a,sessionId:n,cachedValue:l.value};try{if(await u(c))return await P(t,a,n,i),null}catch{}return l}async function v(e,t,a,n){let i=w();try{let r=await i.get(_(e,t,a,n));if(!r)return null;return r.meta}catch{return null}}async function P(e,t,a,n){let i=w();try{await i.invalidate(_(e,t,a,n))}catch{}}async function x(e,t,a,n){let i=w();try{let r=_("conditions",e,t,"__queueCondition__"),s=await i.get(r);if(!s)return null;let l=s.meta;if(l.contentHash!==n||l.conditionCodeHash!==a)return null;return{result:s.value.result,cached:!0}}catch{return null}}async function A(e,t,a,n,i){let r=w();try{let s=_("conditions",e,t,"__queueCondition__");await r.set(s,{result:n},{cachedAt:new Date().toISOString(),contentHash:i,conditionCodeHash:a})}catch(a){(0,d.logWarn)(`[cache] setConditionCache failed for ${e}/${t}:`,a instanceof Error?a.message:a)}}e.s(["getConditionCache",()=>x,"getPerItemCacheMeta",()=>v,"getPerItemCacheWithHook",()=>C,"setConditionCache",()=>A,"setPerItemCache",()=>j],37573),e.s([],99893)}];
5
+ export default _cjs;`;return await (0,t.writeFile)(i,s,"utf-8"),{shimPath:i,shimUrl:(0,n.pathToFileURL)(i).href}}async function m(e,n,i){let s=[e],r=new Set,l=[],m=null;if(i&&n){let e=await h(i,n);l.push(e.shimPath),m=e.shimUrl}for(;s.length>0;){let e=s.shift();if(r.has(e))continue;r.add(e);let n=await (0,t.readFile)(e,"utf-8");m&&(n=n.replace(/from\s+(['"])claudeye\1/g,`from '${m}'`)),i&&(n=n.replace(/require\s*\(\s*(['"])claudeye\1\s*\)/g,`require('${i.replace(/\\/g,"\\\\")}')`));let h=(0,a.dirname)(e),d=new Map;for(let e of[o,u]){let t,i=new RegExp(e.source,e.flags);for(;null!==(t=i.exec(n));){let e=t[2];if(d.has(e))continue;let n=await f(h,e);if(!n)continue;r.has(n)||s.includes(n)||s.push(n);let i=(0,a.relative)(h,n+c).split("\\").join("/");i.startsWith(".")||(i="./"+i),d.set(e,i)}}for(let e of[...d.keys()].sort((e,t)=>t.length-e.length)){let t=d.get(e),a=e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");n=(n=n.replace(RegExp(`'${a}'`,"g"),`'${t}'`)).replace(RegExp(`"${a}"`,"g"),`"${t}"`)}let p=e+c;await (0,t.writeFile)(p,n,"utf-8"),l.push(p)}return l}async function d(){if(s)return;let e=process.env.CLAUDEYE_EVALS_MODULE;if(!e){s=!0;return}let a=globalThis;a[i]=!0;let r=[];try{let t=await l(),a=t?(0,n.pathToFileURL)(t).href:null;r=await m(e,a,t);let i=(0,n.pathToFileURL)(e+c).href;await import(i)}finally{for(let e of(a[i]=!1,r))try{await (0,t.unlink)(e)}catch{}}s=!0}e.s(["ensureEvalsLoaded",()=>d],63407);var p=e.i(46786);function g(){let e=process.env.CLAUDE_PROJECTS_PATH;return e||(0,a.join)((0,p.homedir)(),".claude","projects")}e.s(["getClaudeProjectsPath",()=>g],4152)},43955,83620,64774,34741,e=>{"use strict";var t=e.i(24868),a=e.i(14747),n=e.i(4152);async function i(e,n,i,s){let r=`agent-${s}.jsonl`;for(let s of[(0,a.join)(e,n,r),(0,a.join)(e,n,i,r),(0,a.join)(e,n,i,"subagents",r)])if(!(0,a.relative)(e,s).startsWith(".."))try{return await (0,t.access)(s),s}catch(e){if("ENOENT"!==e.code)continue}return null}function s(e,t,a){let n=new Map,i=new Map,s=a?.maxSize;return async(...a)=>{let r=JSON.stringify(a),l=n.get(r);if(l&&Date.now()<l.expiry)return s&&(n.delete(r),n.set(r,l)),l.data;let o=i.get(r);if(o)return o;let u=e(...a).then(e=>{if(i.delete(r),s&&n.size>=s){let e=n.keys().next().value;n.delete(e)}return n.set(r,{data:e,expiry:Date.now()+1e3*t}),e},e=>{throw i.delete(r),e});return i.set(r,u),u}}function r(e){return new Intl.DateTimeFormat("en-US",{month:"short",day:"numeric",year:"numeric",hour:"numeric",minute:"2-digit",hour12:!0}).format(e)}function l(e){if(e<1e3)return`${e}ms`;let t=e/1e3;if(t<60)return`${t.toFixed(1)}s`;let a=Math.floor(t/60);if(a>=60){let e=Math.floor(a/60);return`${e}h ${a%60}m`}let n=(t%60).toFixed(0);return`${a}m ${n}s`}function o(e){let t=r(e),a=e.getMilliseconds().toString().padStart(3,"0");return`${t}.${a}`}function u(e,t,a,n){return{_source:n,uuid:e.uuid||"",parentUuid:e.parentUuid??null,timestamp:t,timestampMs:a.getTime(),timestampFormatted:o(a)}}async function c(e,t){let a=e.split("\n").filter(e=>""!==e.trim()),n=new Map,i=[],s=[],r=new Set,c=!1;for(let e=0;e<a.length;e++){let l;e>0&&e%200==0&&await new Promise(e=>setImmediate(e));let o=a[e];try{l=JSON.parse(o)}catch{continue}let f={...l,_source:t};s.push(f);let h=l.type,m=l.timestamp;if(!m)continue;let d=new Date(m),p=d.getTime();if("user"===h){let e=l.message;if(Array.isArray(e?.content)){let t=e.content;if(t.some(e=>"tool_result"===e.type)){let e=l.toolUseResult,a="string"==typeof e?.agentId?e.agentId:void 0;for(let e of(a&&/^[a-f0-9]+$/.test(a)&&r.add(a),t)){if("tool_result"!==e.type)continue;let t=e.tool_use_id;if(!t)continue;let{text:i,images:s}=function(e){let t=e.content;if("string"==typeof t)return{text:t};if(Array.isArray(t)){let e=t.filter(e=>"text"===e.type).map(e=>e.text),a=t.filter(e=>"image"===e.type).map(e=>{let t=e.source;return{base64:t.data,mediaType:t.media_type}}).filter(e=>e.base64&&e.mediaType);return{text:e.length>0?e.join("\n"):void 0,images:a.length>0?a:void 0}}return{}}(e);n.set(t,{timestamp:m,timestampMs:p,content:i,images:s,agentId:a})}continue}}let a="string"==typeof e?.content?e.content:"";i.push({type:"user",...u(l,m,d,t),message:{role:"user",content:a}});continue}if("assistant"===h){let e=l.message,a=[];if(Array.isArray(e?.content)&&(a=e.content.filter(e=>["text","tool_use","thinking"].includes(e.type)).map(e=>{if("text"===e.type)return{type:"text",text:e.text};if("tool_use"===e.type){let t=e.input;return{type:"tool_use",id:e.id,name:e.name,input:e.input??{},..."Task"===e.name&&t?{subagentType:t.subagent_type,subagentDescription:t.description}:{}}}return{type:"thinking",thinking:e.thinking,signature:e.signature}})),0===a.length)continue;i.push({type:"assistant",...u(l,m,d,t),message:{role:"assistant",content:a,model:e?.model}});continue}if("file-history-snapshot"===h||"progress"===h||"system"===h){i.push({type:h,...u(l,m,d,t),raw:{...l}});continue}if("queue-operation"===h){let e=c?"Session Resumed":"Session Started";c=!0,i.push({type:"queue-operation",...u(l,m,d,t),label:e});continue}}let f=0;for(let e of i)if("assistant"===e.type)for(let t of(++f%200==0&&await new Promise(e=>setImmediate(e)),e.message.content)){if("tool_use"!==t.type)continue;let a=n.get(t.id);if(!a)continue;let i=new Date(a.timestamp),s=a.timestampMs-e.timestampMs;t.result={timestamp:a.timestamp,timestampFormatted:o(i),content:a.content,images:a.images,durationMs:s,durationFormatted:l(s)},a.agentId&&(t.subagentId=a.agentId)}return i.length>500&&await new Promise(e=>setImmediate(e)),i.sort((e,t)=>e.timestampMs-t.timestampMs),{entries:i,rawLines:s,subagentIds:Array.from(r)}}function f(e,t){for(let a of e)if("assistant"===a.type){for(let e of a.message.content)if("tool_use"===e.type&&"Task"===e.name&&e.subagentId===t)return{type:e.subagentType,description:e.subagentDescription}}}async function h(e,s){let r=(0,n.getClaudeProjectsPath)(),l=(0,a.join)(r,e,`${s}.jsonl`),o=await (0,t.readFile)(l,"utf-8"),{entries:u,rawLines:f,subagentIds:h}=await c(o,"session");if(0===h.length)return{entries:u,rawLines:f,subagentIds:[]};let m=await Promise.allSettled(h.map(async a=>{let n=`agent-${a}`,l=await i(r,e,s,a);if(!l)return null;let o=await (0,t.readFile)(l,"utf-8"),{entries:u,rawLines:f}=await c(o,n);return{entries:u,rawLines:f}})),d=[...u],p=[...f];for(let e of m)"fulfilled"===e.status&&e.value&&(d.push(...e.value.entries),p.push(...e.value.rawLines));return d.length>500&&await new Promise(e=>setImmediate(e)),d.sort((e,t)=>e.timestampMs-t.timestampMs),{entries:d,rawLines:p,subagentIds:h}}e.s(["runtimeCache",()=>s],83620),e.s(["formatDate",()=>r],64774);let m=s((e,t)=>h(e,t),60,{maxSize:50});function d(e){let t=0,a=0,n=0,i=0,s=0,r=new Set;for(let l of e)if("user"===l.type&&t++,"queue-operation"===l.type&&s++,"assistant"===l.type){for(let e of(a++,l.message.content))"tool_use"===e.type&&("Task"===e.name&&(e.subagentType||e.subagentId)?i++:n++);l.message.model&&r.add(l.message.model)}let o="";return e.length>=2&&(o=l(e[e.length-1].timestampMs-e[0].timestampMs)),{turnCount:s,userCount:t,assistantCount:a,toolCallCount:n,subagentCount:i,duration:o,models:Array.from(r)}}e.s(["extractSubagentMeta",()=>f,"getCachedSessionLog",0,m],43955),e.s(["calculateLogStats",()=>d],34741)},99893,637,82754,37573,e=>{"use strict";var t=e.i(54799),a=e.i(24868),n=e.i(14747),i=e.i(4152);let s=null;function r(){if(s)return s;let e=(0,n.resolve)((0,i.getClaudeProjectsPath)());return s=(0,t.createHash)("sha256").update(e).digest("hex").slice(0,8)}let l=new Map;async function o(e,s){let r=(0,i.getClaudeProjectsPath)(),o=(0,n.join)(r,e,`${s}.jsonl`),u=Date.now(),c=l.get(o);if(c&&c.expiresAt>u)return c.hash;let f=await (0,a.stat)(o),h=`${f.mtimeMs}:${f.size}`,m=(0,t.createHash)("sha256").update(h).digest("hex");return l.set(o,{hash:m,expiresAt:u+5e3}),m}async function u(e,s,r){let l=(0,i.getClaudeProjectsPath)(),o=`agent-${r}.jsonl`,u=[(0,n.join)(l,e,o),(0,n.join)(l,e,s,o),(0,n.join)(l,e,s,"subagents",o)];for(let e of(await Promise.allSettled(u.map(e=>(0,a.stat)(e)))))if("fulfilled"===e.status){let a=e.value,n=`${a.mtimeMs}:${a.size}`;return(0,t.createHash)("sha256").update(n).digest("hex")}return""}let c=new WeakMap;function f(e){let a=c.get(e);return a||(a=(0,t.createHash)("sha256").update(e.toString()).digest("hex"),c.set(e,a)),a}e.s(["hashItemCode",()=>f,"hashProjectsPath",()=>r,"hashSessionFile",()=>o,"hashSubagentFile",()=>u],637);var h=e.i(46786);async function m(e,t){let a=Array(e.length),n=0;async function i(){for(;n<e.length;){let t=n++;try{a[t]={status:"fulfilled",value:await e[t]()}}catch(e){a[t]={status:"rejected",reason:e}}}}let s=Array.from({length:Math.min(t,e.length)},()=>i());return await Promise.all(s),a}e.s(["batchAll",()=>m],82754);var d=e.i(38281);let p=(0,n.join)((0,h.homedir)(),".claudeye","cache");class g{basePath;constructor(e){this.basePath=e||p}keyToPath(e){return(0,n.join)(this.basePath,`${e}.json`)}async get(e){try{let t=this.keyToPath(e),n=await (0,a.readFile)(t,"utf-8");return JSON.parse(n)}catch{return null}}async set(e,t,i){try{let s=this.keyToPath(e);await (0,a.mkdir)((0,n.dirname)(s),{recursive:!0}),await (0,a.writeFile)(s,JSON.stringify({value:t,meta:i}),"utf-8")}catch(t){(0,d.logWarn)(`[cache] Write failed for ${e}:`,t instanceof Error?t.message:t)}}async invalidate(e){try{await (0,a.unlink)(this.keyToPath(e))}catch{}}async invalidateByPrefix(e){try{let t=e.split("/"),i=t.pop()||"",s=(0,n.join)(this.basePath,...t),r=(await (0,a.readdir)(s)).filter(e=>e.endsWith(".json")&&e.startsWith(i));await m(r.map(e=>()=>(0,a.unlink)((0,n.join)(s,e)).catch(()=>{})),50)}catch{}}async close(){}async clearAll(){try{await (0,a.rm)(this.basePath,{recursive:!0,force:!0})}catch{}}}let y="__CLAUDEYE_CACHE_BACKEND__";function w(){let e=globalThis;if(e[y])return e[y];let t=new g(process.env.CLAUDEYE_CACHE_PATH||void 0);return e[y]=t,t}function _(e,t,a,n){let i=r();return`${i}/${e}/${t}/${a}/item/${n}`}async function $(e,t,a,n,i,s){let r=w();try{let l=await r.get(_(e,t,a,n));if(!l)return null;let u=l.meta,c=s??await o(t,a);if(u.contentHash!==c||u.itemCodeHash!==i)return null;return{value:l.value,meta:u,cached:!0}}catch{return null}}async function j(e,t,a,n,i,s,r){let l=w();try{let u=r??await o(t,a);await l.set(_(e,t,a,n),s,{cachedAt:new Date().toISOString(),contentHash:u,itemCodeHash:i})}catch(i){(0,d.logWarn)(`[cache] setPerItemCache failed for ${e}/${t}/${a}/${n}:`,i instanceof Error?i.message:i)}}async function C(t,a,n,i,s,r){let l=await $(t,a,n,i,s,r);if(!l)return null;if("evals"!==t&&"enrichments"!==t)return l;let{getCacheInvalidationHook:o}=await e.A(76590),u=o();if(!u)return l;let c={itemName:i,itemKind:t,cachedAt:l.meta.cachedAt,contentHash:l.meta.contentHash,itemCodeHash:l.meta.itemCodeHash,projectName:a,sessionId:n,cachedValue:l.value};try{if(await u(c))return await x(t,a,n,i),null}catch{}return l}async function v(e,t,a,n){let i=w();try{let s=await i.get(_(e,t,a,n));if(!s)return null;return s.meta}catch{return null}}async function x(e,t,a,n){let i=w();try{await i.invalidate(_(e,t,a,n))}catch{}}async function P(e,t,a,n){let i=w();try{let s=_("conditions",e,t,"__queueCondition__"),r=await i.get(s);if(!r)return null;let l=r.meta;if(l.contentHash!==n||l.conditionCodeHash!==a)return null;return{result:r.value.result,cached:!0}}catch{return null}}async function A(e,t,a,n,i){let s=w();try{let r=_("conditions",e,t,"__queueCondition__");await s.set(r,{result:n},{cachedAt:new Date().toISOString(),contentHash:i,conditionCodeHash:a})}catch(a){(0,d.logWarn)(`[cache] setConditionCache failed for ${e}/${t}:`,a instanceof Error?a.message:a)}}e.s(["getConditionCache",()=>P,"getPerItemCacheMeta",()=>v,"getPerItemCacheWithHook",()=>C,"setConditionCache",()=>A,"setPerItemCache",()=>j],37573),e.s([],99893)}];
6
6
 
7
7
  //# sourceMappingURL=lib_74f62736._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[67,e=>{"use strict";var t=e.i(54799),r=e.i(63407),a=e.i(85835),n=e.i(58065);let i="__CLAUDEYE_ALERT_REGISTRY__";function s(){let e=globalThis;return e[i]||(e[i]=[]),e[i]}function o(){return s().length>0}async function l(e,t=!1){if(!o())return;let r=s().filter(e=>!t||!e.suppressOnRecompute);await Promise.allSettled(r.map(async t=>{try{await t.fn(e)}catch(e){console.error(`[alert] Error in alert "${t.name}":`,e instanceof Error?e.message:e)}}))}e.i(99893);var c=e.i(637),d=e.i(37573),p=e.i(43955),m=e.i(34741),u=e.i(24868),h=e.i(14747),f=e.i(4152),g=e.i(83620),y=e.i(38281),I=e.i(64774);async function w(e,t){try{return(await (0,u.stat)(e)).mtime}catch(e){return(0,y.logWarn)(`Failed to stat ${t}:`,e),new Date(0)}}async function v(e){try{if(!(await (0,u.stat)(e)).isDirectory())return null;return await (0,u.readdir)(e,{withFileTypes:!0})}catch{return null}}async function $(){try{let e=(0,f.getClaudeProjectsPath)(),t=await v(e);if(!t)return[];let r=await Promise.all(t.filter(e=>e.isDirectory()).map(async t=>{let r=(0,h.join)(e,t.name),a=await w(r,t.name);return{name:t.name,path:r,isDirectory:!0,lastModified:a,lastModifiedFormatted:(0,I.formatDate)(a)}}));return r.sort((e,t)=>t.lastModified.getTime()-e.lastModified.getTime()),r}catch(e){return(0,y.logError)("Error reading project folders:",e),[]}}function E(e){let t=e.match(/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/i);return t?t[0]:void 0}async function j(e){try{let t=await v(e);if(!t)return[];let r=t.filter(e=>e.isFile()&&e.name.endsWith(".jsonl")&&E(e.name)),a=await Promise.all(r.map(async t=>{let r=(0,h.join)(e,t.name),a=await w(r,t.name);return{name:t.name,path:r,lastModified:a,lastModifiedFormatted:(0,I.formatDate)(a),sessionId:E(t.name)}}));return a.sort((e,t)=>t.lastModified.getTime()-e.lastModified.getTime()),a}catch(e){return(0,y.logError)("Error reading session files:",e),[]}}let k=(0,g.runtimeCache)($,30),N=(0,g.runtimeCache)(e=>j(e),30);var C=e.i(82754),S=e.i(46786);let A=(0,h.join)((0,S.homedir)(),".claudeye","cache","completed-history"),_="current.jsonl",W=[],x=null,P=0,M=!1,b=!1,L=Promise.resolve(),H=0;async function D(){b||(await (0,u.mkdir)(A,{recursive:!0}),b=!0)}function T(e){if(e){x&&(clearTimeout(x),x=null),R();return}x||(x=setTimeout(()=>{x=null,R()},2e3))}function R(){L=L.then(()=>O()).catch(e=>{(0,y.logWarn)("completed-store flush error:",e instanceof Error?e.message:e)})}function F(){x&&(clearTimeout(x),x=null),0!==W.length&&(L=L.then(()=>O()).catch(e=>{(0,y.logWarn)("completed-store flushNow error:",e instanceof Error?e.message:e)}))}async function O(){if(0===W.length)return;await D(),M||(P=await B((0,h.join)(A,_)),M=!0);let e=W.splice(0),t=(0,h.join)(A,_),r=0;try{for(;r<e.length;){P>=25&&await U();let a=25-P;if(a<=0)throw Error("completed-store: zero remaining after rotate — aborting to prevent infinite loop");let n=e.slice(r,r+a),i=n.map(e=>JSON.stringify(e)).join("\n")+"\n";await q(t,i),P+=n.length,r+=n.length,P>=25&&await U()}}catch(a){let t=e.slice(r);throw t.length>0&&W.unshift(...t),a}}async function U(){let e=(0,h.join)(A,_),t=`page-${Date.now()}-${H++}.jsonl`,r=(0,h.join)(A,t);await (0,u.rename)(e,r),P=0}async function q(e,t){let r=await (0,u.readFile)(e,"utf-8").catch(()=>"");await (0,u.writeFile)(e,r+t,"utf-8")}async function B(e){try{let t=await (0,u.readFile)(e,"utf-8");if(!t.trim())return 0;return t.trim().split("\n").length}catch{return 0}}async function G(e){if(await L,await D(),e<1)return[];if(1===e){let e=(0,h.join)(A,_);return(await J(e)).reverse()}let t=await z(),r=e-2;return r>=t.length?[]:(await J((0,h.join)(A,t[r]))).reverse()}async function Y(){return await D(),1+(await z()).length}async function Q(){await L,await D();let e=(0,h.join)(A,_),t=(await J(e)).reverse(),r=await z(),a=[];for(let e of r){let t=await J((0,h.join)(A,e));a.push(...t.reverse())}return[...t,...a]}async function J(e){try{let t=await (0,u.readFile)(e,"utf-8");if(!t.trim())return[];let r=[];for(let e of t.trim().split("\n"))try{r.push(JSON.parse(e))}catch{}return r}catch{return[]}}async function z(){try{return(await (0,u.readdir)(A)).filter(e=>e.startsWith("page-")&&e.endsWith(".jsonl")).sort((e,t)=>{let r=e.slice(5,-6).split("-"),a=t.slice(5,-6).split("-"),n=parseInt(r[0],10),i=parseInt(a[0],10);if(n!==i)return i-n;let s=r.length>1?parseInt(r[1],10):0;return(a.length>1?parseInt(a[1],10):0)-s})}catch{return[]}}let X={HIGH:0,LOW:10},K=X.HIGH,V=X.LOW;function Z(e){return e<=X.HIGH?"HIGH":"LOW"}let ee="__CLAUDEYE_QUEUE__";function et(){let e=globalThis;return e[ee]||(e[ee]={pending:[],pendingExecutors:new Map,processing:new Map,promises:new Map,completed:[],activeWorkers:0,scannedAt:0,intervalId:null,errors:[]}),e[ee]}let er=()=>parseInt(process.env.CLAUDEYE_QUEUE_CONCURRENCY??"2",10)||2;async function ea(e,i){try{if(!o())return;await (0,r.ensureEvalsLoaded)();let p=await (0,c.hashSessionFile)(e,i);if(!p)return;let m=(0,a.getSessionScopedEvals)(),u=(0,n.getSessionScopedEnrichers)(),[h,f]=await Promise.all([Promise.all(m.map(t=>(0,d.getPerItemCacheWithHook)("evals",e,i,t.name,(0,c.hashItemCode)(t.fn),p))),Promise.all(u.map(t=>(0,d.getPerItemCacheWithHook)("enrichments",e,i,t.name,(0,c.hashItemCode)(t.fn),p)))]);if(h.some(e=>!e)||f.some(e=>!e))return;let g=s().map(e=>e.name).sort().join(","),y=(0,t.createHash)("sha256").update(g).digest("hex"),I=await (0,d.getPerItemCacheWithHook)("alerts",e,i,"__fired__",y,p);if(I&&I.value.firedAt>0)return;let w=h.map(e=>e.value),v=f.map(e=>e.value),$=w.length>0?{results:w,totalDurationMs:w.reduce((e,t)=>e+t.durationMs,0),passCount:w.filter(e=>!e.error&&!e.skipped&&e.pass).length,failCount:w.filter(e=>!e.error&&!e.skipped&&!e.pass).length,errorCount:w.filter(e=>!!e.error).length,skippedCount:w.filter(e=>!!e.skipped).length}:void 0,E=v.length>0?{results:v,totalDurationMs:v.reduce((e,t)=>e+t.durationMs,0),errorCount:v.filter(e=>!!e.error).length,skippedCount:v.filter(e=>!!e.skipped).length}:void 0,j=ei.get(`${e}/${i}`)??!1;ei.delete(`${e}/${i}`),await l({projectName:e,sessionId:i,evalSummary:$,enrichSummary:E},j);try{await (0,d.setPerItemCache)("alerts",e,i,"__fired__",y,{firedAt:Date.now()},p)}catch{}}catch(e){(0,y.logError)("tryFireSessionAlerts error:",e instanceof Error?e.message:e)}}let en=new Map,ei=new Map;async function es(e,r){try{let a=await (0,c.hashSessionFile)(e,r);if(!a)return;let n=s().map(e=>e.name).sort().join(","),i=(0,t.createHash)("sha256").update(n).digest("hex");await (0,d.setPerItemCache)("alerts",e,r,"__fired__",i,{firedAt:0},a)}catch{}}function eo(e,t,r,a,n,i){let s=et(),o=`${e}:${t}/${r}/${a}`,l=i?.priority??X.HIGH,c=i?.forceRefresh??!1,d=er(),p=s.promises.get(o);if(p&&!c){let e=s.pending.find(e=>e.key===o);return e&&l<e.priority&&(e.priority=l,s.pending.sort((e,t)=>e.priority-t.priority||e.addedAt-t.addedAt)),p}if(p&&c){let i=p.catch(()=>{}).then(()=>eo(e,t,r,a,n,{priority:l}));return s.promises.set(o,i),i}let m=()=>{let i,c,d;s.activeWorkers++,s.processing.set(o,{key:o,type:e,projectName:t,sessionId:r,itemName:a,priority:l,startedAt:Date.now()});let p=Date.now(),m=new Promise((e,t)=>{i=e,c=t});m.catch(()=>{}),s.promises.set(o,m);let u=(n,i)=>{s.activeWorkers--,s.processing.delete(o),s.promises.delete(o),function(e){if(!e.completed){e.completed=[];return}e.completed.length>200&&(e.completed=e.completed.slice(0,200))}(s);let l={key:o,type:e,projectName:t,sessionId:r,itemName:a,completedAt:Date.now(),durationMs:Date.now()-p,success:n,error:i};if(s.completed.unshift(l),W.push(l),W.length>=20?T(!0):T(!1),!n&&i&&(s.errors.push({key:o,error:i,at:Date.now()}),s.errors.length>50&&(s.errors=s.errors.slice(-50))),n&&("eval"===e||"enrichment"===e)){let e,a,n=r.includes("/")?r.split("/")[0]:r;!function(e,t){let r=et(),a=e=>e===t||e.startsWith(`${t}/`);if(r.pending.some(t=>("eval"===t.type||"enrichment"===t.type)&&t.projectName===e&&a(t.sessionId)))return!0;for(let[,t]of r.processing)if(("eval"===t.type||"enrichment"===t.type)&&t.projectName===e&&a(t.sessionId))return!0;return!1}(t,n)&&(e=`${t}/${n}`,(a=en.get(e))&&clearTimeout(a),en.set(e,setTimeout(()=>{en.delete(e),ea(t,n).catch(e=>{(0,y.logWarn)(`Alert firing failed for ${t}/${n}:`,e instanceof Error?e.message:e)})},500)))}let c=et(),d=er();for(;c.activeWorkers<d&&c.pending.length>0;){let e=c.pending.shift(),t=c.pendingExecutors.get(e.key);c.pendingExecutors.delete(e.key),t&&t()}};try{d=n().then(e=>(u(!0),e),e=>{throw u(!1,e instanceof Error?e.message:String(e)),e})}catch(e){u(!1,e instanceof Error?e.message:String(e)),d=Promise.reject(e)}return s.promises.set(o,d),d.then(i,c),d};if(s.activeWorkers<d)return m();let u=new Promise((i,c)=>{!function(e,t){let r=0,a=e.length;for(;r<a;){let n=r+a>>>1;0>=(e[n].priority-t.priority||e[n].addedAt-t.addedAt)?r=n+1:a=n}e.splice(r,0,t)}(s.pending,{key:o,type:e,projectName:t,sessionId:r,itemName:a,priority:l,addedAt:Date.now(),task:n}),s.pendingExecutors.set(o,()=>{m().then(i,c)})});return s.promises.set(o,u),u}function el(){let e=et();return{pending:e.pending.map(e=>({key:e.key,type:e.type,projectName:e.projectName,sessionId:e.sessionId,itemName:e.itemName,priority:e.priority,priorityLabel:Z(e.priority),addedAt:e.addedAt})),processing:Array.from(e.processing.values()),completed:e.completed,scannedAt:e.scannedAt,backgroundRunning:null!==e.intervalId,recentErrors:e.errors.slice(-10)}}async function ec(){try{let t;await (0,r.ensureEvalsLoaded)();let i=(0,a.hasSubagentEvals)()||(0,n.hasSubagentEnrichers)();if(!((0,a.hasEvals)()||(0,n.hasEnrichers)()||i))return void(0,y.logInfo)("Scan skipped: no evals or enrichers registered");et().scannedAt=Date.now();let s=(0,a.getSessionScopedEvals)(),o=(0,n.getSessionScopedEnrichers)(),l=i?(0,a.getSubagentScopedEvals)():[],u=i?(0,n.getSubagentScopedEnrichers)():[];(0,y.logInfo)(`Scan starting: ${s.length} eval(s), ${o.length} enricher(s), ${l.length} subagent eval(s), ${u.length} subagent enricher(s)`);let h=await k(),f=await (0,C.batchAll)(h.map(e=>async()=>{let t=await N(e.path);return{project:e,sessionFiles:t}}),10),g=[];for(let e of f)if("fulfilled"===e.status)for(let t of e.value.sessionFiles)t.sessionId&&g.push({projectName:e.value.project.name,sessionId:t.sessionId,lastModified:t.lastModified.getTime()});(0,y.logInfo)(`Discovered ${g.length} session(s) across ${h.length} project(s)`),g.sort((e,t)=>t.lastModified-e.lastModified);let I=(t=parseInt(process.env.CLAUDEYE_QUEUE_MAX_ITEMS??"500",10),Number.isNaN(t)?500:t),{processSessionEval:w}=await e.A(90454),{processSessionEnrichment:v}=await e.A(16692),{processSubagentEval:$}=i?await e.A(82400):{processSubagentEval:null},{processSubagentEnrichment:E}=i?await e.A(82937):{processSubagentEnrichment:null},j=globalThis.__CLAUDEYE_QUEUE_CONDITION_REGISTRY__??null,S=j?.fn??null,A=j?.cacheable??!1,_=S?(0,c.hashItemCode)(S):null,W=s.map(e=>(0,c.hashItemCode)(e.fn)),x=o.map(e=>(0,c.hashItemCode)(e.fn)),P=l.map(e=>(0,c.hashItemCode)(e.fn)),M=u.map(e=>(0,c.hashItemCode)(e.fn)),b=0,L=0,H=0,D=0,T=0;for(let e=0;e<g.length;e+=5){if(I>0&&b>=I){let t=g.length-e;(0,y.logInfo)(`Reached maxItems limit (${I}), stopping scan (${t} sessions remaining)`);break}let t=g.slice(e,e+5);for(let e of(await (0,C.batchAll)(t.map(e=>async()=>{let t;if(I>0&&b>=I)return{picked:!1};try{t=await (0,c.hashSessionFile)(e.projectName,e.sessionId)}catch(t){return(0,y.logWarn)(`Hash failed for ${e.projectName}/${e.sessionId}, skipping:`,t instanceof Error?t.message:t),{picked:!1,skipReason:"hash"}}if(S&&_)if(A){let r=await (0,d.getConditionCache)(e.projectName,e.sessionId,_,t);if(null!==r){if(!r.result)return(0,y.logInfo)(`Session ${e.projectName}/${e.sessionId} skipped: queue condition cached false`),{picked:!1,skipReason:"condition"}}else{let{entries:r,rawLines:a}=await (0,p.getCachedSessionLog)(e.projectName,e.sessionId),n=(0,m.calculateLogStats)(r),i={entries:a,stats:n,projectName:e.projectName,sessionId:e.sessionId,source:"session"},s=!1;try{s=await S(i)}catch{s=!1}if((0,d.setConditionCache)(e.projectName,e.sessionId,_,s,t).catch(t=>{(0,y.logWarn)(`Condition cache write failed for ${e.projectName}/${e.sessionId}:`,t instanceof Error?t.message:t)}),!s)return(0,y.logInfo)(`Session ${e.projectName}/${e.sessionId} skipped: queue condition returned false`),{picked:!1,skipReason:"condition"}}}else{let{entries:t,rawLines:r}=await (0,p.getCachedSessionLog)(e.projectName,e.sessionId),a=(0,m.calculateLogStats)(t),n={entries:r,stats:a,projectName:e.projectName,sessionId:e.sessionId,source:"session"},i=!1;try{i=await S(n)}catch{i=!1}if(!i)return(0,y.logInfo)(`Session ${e.projectName}/${e.sessionId} skipped: queue condition returned false`),{picked:!1,skipReason:"condition"}}let r=await Promise.all([...s.map((r,a)=>(0,d.getPerItemCacheWithHook)("evals",e.projectName,e.sessionId,s[a].name,W[a],t).then(e=>({cached:!!e,type:"eval",idx:a}))),...o.map((r,a)=>(0,d.getPerItemCacheWithHook)("enrichments",e.projectName,e.sessionId,o[a].name,x[a],t).then(e=>({cached:!!e,type:"enrichment",idx:a})))]),a=r.filter(e=>!e.cached),n=!1;if(a.length>0){let r=(await Promise.all(a.map(t=>{let r="eval"===t.type?"evals":"enrichments",a="eval"===t.type?s[t.idx].name:o[t.idx].name;return(0,d.getPerItemCacheMeta)(r,e.projectName,e.sessionId,a)}))).every(e=>!!e&&e.contentHash===t),i=e.sessionId.includes("/")?e.sessionId.split("/")[0]:e.sessionId;for(let t of(ei.set(`${e.projectName}/${i}`,r),a)){if(I>0&&b>=I)break;"eval"===t.type?eo("eval",e.projectName,e.sessionId,s[t.idx].name,()=>w(e.projectName,e.sessionId,s[t.idx].name),{priority:X.LOW}).catch(e=>{(0,y.logWarn)(`Background eval enqueue failed for ${s[t.idx].name}:`,e instanceof Error?e.message:e)}):eo("enrichment",e.projectName,e.sessionId,o[t.idx].name,()=>v(e.projectName,e.sessionId,o[t.idx].name),{priority:X.LOW}).catch(e=>{(0,y.logWarn)(`Background enrichment enqueue failed for ${o[t.idx].name}:`,e instanceof Error?e.message:e)}),b++,n=!0}}if(i){let t=[];try{let{subagentIds:r}=await (0,p.getCachedSessionLog)(e.projectName,e.sessionId);t=r}catch{}for(let r of t){if(I>0&&b>=I)break;let t=`${e.sessionId}/agent-${r}`,a=await (0,c.hashSubagentFile)(e.projectName,e.sessionId,r);if(!a)continue;let i=(await Promise.all([...l.map((r,n)=>(0,d.getPerItemCacheWithHook)("evals",e.projectName,t,l[n].name,P[n],a).then(e=>({cached:!!e,type:"eval",idx:n}))),...u.map((r,n)=>(0,d.getPerItemCacheWithHook)("enrichments",e.projectName,t,u[n].name,M[n],a).then(e=>({cached:!!e,type:"enrichment",idx:n})))])).filter(e=>!e.cached);if(0===i.length)continue;let s=(await Promise.all(i.map(r=>{let a="eval"===r.type?"evals":"enrichments",n="eval"===r.type?l[r.idx].name:u[r.idx].name;return(0,d.getPerItemCacheMeta)(a,e.projectName,t,n)}))).every(e=>!!e&&e.contentHash===a),o=e.sessionId.includes("/")?e.sessionId.split("/")[0]:e.sessionId,p=ei.get(`${e.projectName}/${o}`);for(let a of(void 0!==p?ei.set(`${e.projectName}/${o}`,p&&s):ei.set(`${e.projectName}/${o}`,s),i)){if(I>0&&b>=I)break;"eval"===a.type?eo("eval",e.projectName,t,l[a.idx].name,()=>$(e.projectName,e.sessionId,r,l[a.idx].name),{priority:X.LOW}).catch(e=>{(0,y.logWarn)(`Background subagent eval enqueue failed for ${l[a.idx].name}:`,e instanceof Error?e.message:e)}):eo("enrichment",e.projectName,t,u[a.idx].name,()=>E(e.projectName,e.sessionId,r,u[a.idx].name),{priority:X.LOW}).catch(e=>{(0,y.logWarn)(`Background subagent enrichment enqueue failed for ${u[a.idx].name}:`,e instanceof Error?e.message:e)}),b++,n=!0}}}if(n){let t=r.filter(e=>!e.cached).map(e=>"eval"===e.type?`eval:${s[e.idx].name}`:`enrichment:${o[e.idx].name}`),a=r.filter(e=>e.cached).map(e=>"eval"===e.type?`eval:${s[e.idx].name}`:`enrichment:${o[e.idx].name}`);(0,y.logInfo)(`Session ${e.projectName}/${e.sessionId} picked: ${t.length} uncached (${t.join(", ")}), ${a.length} cached (${a.join(", ")})`)}else(0,y.logInfo)(`Session ${e.projectName}/${e.sessionId} skipped: all items cached`);return{picked:n,skipReason:n?void 0:"cached"}}),5)))"fulfilled"===e.status&&(e.value.picked?L++:"cached"===e.value.skipReason?H++:"condition"===e.value.skipReason?D++:"hash"===e.value.skipReason&&T++);e+5<g.length&&await new Promise(e=>setTimeout(e,0))}let R=H+D+T,F=R>0?`, skipped ${R} (${H} cached, ${D} condition-false, ${T} hash-error)`:"";(0,y.logInfo)(`Scan complete: enqueued ${b} item(s) across ${L} session(s)${F}`)}catch(e){(0,y.logError)("scanAndEnqueue error:",e)}}function ed(e){let t=et();if(t.intervalId)return;(0,y.logInfo)(`Starting background processor (interval: ${e}s)`),ec().catch(e=>{(0,y.logError)("Initial scan error:",e)});let r=()=>{t.intervalId=setTimeout(async()=>{try{await ec()}catch(e){(0,y.logError)("Background processing error:",e)}null!==t.intervalId&&r()},1e3*e)};r()}function ep(){let e=et();e.intervalId&&(clearTimeout(e.intervalId),e.intervalId=null,(0,y.logInfo)("Background processor stopped"))}async function em(e){return F(),{entries:await G(e),totalPages:await Y(),page:e}}async function eu(e,t){F();let r=(await Q()).filter(t=>(!e.type||t.type===e.type)&&(!e.itemName||!!t.itemName.toLowerCase().includes(e.itemName.toLowerCase()))&&(!e.sessionId||!!t.sessionId.toLowerCase().includes(e.sessionId.toLowerCase()))),a=Math.max(1,Math.ceil(r.length/25)),n=(t-1)*25;return{entries:r.slice(n,n+25),totalPages:a,page:t}}e.s(["HIGH",0,K,"LOW",0,V,"Priority",0,X,"clearAlertFiredMarker",()=>es,"getCompletedHistory",()=>em,"getQueueStatus",()=>el,"priorityLabel",()=>Z,"queuePerItem",()=>eo,"scanAndEnqueue",()=>ec,"searchCompletedHistory",()=>eu,"startBackgroundProcessor",()=>ed,"stopBackgroundProcessor",()=>ep,"tryFireSessionAlerts",()=>ea],67)}];
1
+ module.exports=[67,e=>{"use strict";var t=e.i(54799),r=e.i(63407),a=e.i(85835),n=e.i(58065);let i="__CLAUDEYE_ALERT_REGISTRY__";function s(){let e=globalThis;return e[i]||(e[i]=[]),e[i]}function o(){return s().length>0}async function l(e,t=!1){if(!o())return;let r=s().filter(e=>!t||!e.suppressOnRecompute);await Promise.allSettled(r.map(async t=>{try{await t.fn(e)}catch(e){console.error(`[alert] Error in alert "${t.name}":`,e instanceof Error?e.message:e)}}))}e.i(99893);var c=e.i(637),d=e.i(37573),m=e.i(43955);function p(e){let t=e.indexOf("/");return -1===t?e:e.slice(0,t)}var u=e.i(34741),h=e.i(24868),f=e.i(14747),g=e.i(4152),y=e.i(83620),I=e.i(38281),w=e.i(64774);async function v(e,t){try{return(await (0,h.stat)(e)).mtime}catch(e){return(0,I.logWarn)(`Failed to stat ${t}:`,e),new Date(0)}}async function $(e){try{if(!(await (0,h.stat)(e)).isDirectory())return null;return await (0,h.readdir)(e,{withFileTypes:!0})}catch{return null}}async function E(){try{let e=(0,g.getClaudeProjectsPath)(),t=await $(e);if(!t)return[];let r=await Promise.all(t.filter(e=>e.isDirectory()).map(async t=>{let r=(0,f.join)(e,t.name),a=await v(r,t.name);return{name:t.name,path:r,isDirectory:!0,lastModified:a,lastModifiedFormatted:(0,w.formatDate)(a)}}));return r.sort((e,t)=>t.lastModified.getTime()-e.lastModified.getTime()),r}catch(e){return(0,I.logError)("Error reading project folders:",e),[]}}function j(e){let t=e.match(/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/i);return t?t[0]:void 0}async function k(e){try{let t=await $(e);if(!t)return[];let r=t.filter(e=>e.isFile()&&e.name.endsWith(".jsonl")&&j(e.name)),a=await Promise.all(r.map(async t=>{let r=(0,f.join)(e,t.name),a=await v(r,t.name);return{name:t.name,path:r,lastModified:a,lastModifiedFormatted:(0,w.formatDate)(a),sessionId:j(t.name)}}));return a.sort((e,t)=>t.lastModified.getTime()-e.lastModified.getTime()),a}catch(e){return(0,I.logError)("Error reading session files:",e),[]}}let N=(0,y.runtimeCache)(E,30),C=(0,y.runtimeCache)(e=>k(e),30);var S=e.i(82754),_=e.i(34324),x=e.i(46786);let A=(0,f.join)((0,x.homedir)(),".claudeye","cache","completed-history"),W="current.jsonl",P=[],b=null,M=0,L=!1,H=!1,D=Promise.resolve(),T=0;async function R(){H||(await (0,h.mkdir)(A,{recursive:!0}),H=!0)}function F(e){if(e){b&&(clearTimeout(b),b=null),O();return}b||(b=setTimeout(()=>{b=null,O()},2e3))}function O(){D=D.then(()=>q()).catch(e=>{(0,I.logWarn)("completed-store flush error:",e instanceof Error?e.message:e)})}function U(){b&&(clearTimeout(b),b=null),0!==P.length&&(D=D.then(()=>q()).catch(e=>{(0,I.logWarn)("completed-store flushNow error:",e instanceof Error?e.message:e)}))}async function q(){if(0===P.length)return;await R(),L||(M=await Y((0,f.join)(A,W)),L=!0);let e=P.splice(0),t=(0,f.join)(A,W),r=0;try{for(;r<e.length;){M>=25&&await B();let a=25-M;if(a<=0)throw Error("completed-store: zero remaining after rotate — aborting to prevent infinite loop");let n=e.slice(r,r+a),i=n.map(e=>JSON.stringify(e)).join("\n")+"\n";await G(t,i),M+=n.length,r+=n.length,M>=25&&await B()}}catch(a){let t=e.slice(r);throw t.length>0&&P.unshift(...t),a}}async function B(){let e=(0,f.join)(A,W),t=`page-${Date.now()}-${T++}.jsonl`,r=(0,f.join)(A,t);await (0,h.rename)(e,r),M=0}async function G(e,t){let r=await (0,h.readFile)(e,"utf-8").catch(()=>"");await (0,h.writeFile)(e,r+t,"utf-8")}async function Y(e){try{let t=await (0,h.readFile)(e,"utf-8");if(!t.trim())return 0;return t.trim().split("\n").length}catch{return 0}}async function Q(e){if(await D,await R(),e<1)return[];if(1===e){let e=(0,f.join)(A,W);return(await X(e)).reverse()}let t=await K(),r=e-2;return r>=t.length?[]:(await X((0,f.join)(A,t[r]))).reverse()}async function J(){return await R(),1+(await K()).length}async function z(){await D,await R();let e=(0,f.join)(A,W),t=(await X(e)).reverse(),r=await K(),a=[];for(let e of r){let t=await X((0,f.join)(A,e));a.push(...t.reverse())}return[...t,...a]}async function X(e){try{let t=await (0,h.readFile)(e,"utf-8");if(!t.trim())return[];let r=[];for(let e of t.trim().split("\n"))try{r.push(JSON.parse(e))}catch{}return r}catch{return[]}}async function K(){try{return(await (0,h.readdir)(A)).filter(e=>e.startsWith("page-")&&e.endsWith(".jsonl")).sort((e,t)=>{let r=e.slice(5,-6).split("-"),a=t.slice(5,-6).split("-"),n=parseInt(r[0],10),i=parseInt(a[0],10);if(n!==i)return i-n;let s=r.length>1?parseInt(r[1],10):0;return(a.length>1?parseInt(a[1],10):0)-s})}catch{return[]}}let V={HIGH:0,LOW:10},Z=V.HIGH,ee=V.LOW;function et(e){return e<=V.HIGH?"HIGH":"LOW"}let er="__CLAUDEYE_QUEUE__";function ea(){let e=globalThis;return e[er]||(e[er]={pending:[],pendingExecutors:new Map,processing:new Map,promises:new Map,completed:[],activeWorkers:0,scannedAt:0,intervalId:null,errors:[]}),e[er]}let en=()=>parseInt(process.env.CLAUDEYE_QUEUE_CONCURRENCY??"2",10)||2;async function ei(e,i){try{if(!o())return;await (0,r.ensureEvalsLoaded)();let m=await (0,c.hashSessionFile)(e,i);if(!m)return;let p=(0,a.getSessionScopedEvals)(),u=(0,n.getSessionScopedEnrichers)(),[h,f]=await Promise.all([Promise.all(p.map(t=>(0,d.getPerItemCacheWithHook)("evals",e,i,t.name,(0,c.hashItemCode)(t.fn),m))),Promise.all(u.map(t=>(0,d.getPerItemCacheWithHook)("enrichments",e,i,t.name,(0,c.hashItemCode)(t.fn),m)))]);if(h.some(e=>!e)||f.some(e=>!e))return;let g=s().map(e=>e.name).sort().join(","),y=(0,t.createHash)("sha256").update(g).digest("hex"),I=await (0,d.getPerItemCacheWithHook)("alerts",e,i,"__fired__",y,m);if(I&&I.value.firedAt>0)return;let w=h.map(e=>e.value),v=f.map(e=>e.value),$=w.length>0?{results:w,totalDurationMs:w.reduce((e,t)=>e+t.durationMs,0),passCount:w.filter(e=>!e.error&&!e.skipped&&e.pass).length,failCount:w.filter(e=>!e.error&&!e.skipped&&!e.pass).length,errorCount:w.filter(e=>!!e.error).length,skippedCount:w.filter(e=>!!e.skipped).length}:void 0,E=v.length>0?{results:v,totalDurationMs:v.reduce((e,t)=>e+t.durationMs,0),errorCount:v.filter(e=>!!e.error).length,skippedCount:v.filter(e=>!!e.skipped).length}:void 0,j=eo.get(`${e}/${i}`)??!1;eo.delete(`${e}/${i}`),await l({projectName:e,sessionId:i,evalSummary:$,enrichSummary:E},j);try{await (0,d.setPerItemCache)("alerts",e,i,"__fired__",y,{firedAt:Date.now()},m)}catch{}}catch(e){(0,I.logError)("tryFireSessionAlerts error:",e instanceof Error?e.message:e)}}let es=new Map,eo=new Map;async function el(e,r){try{let a=await (0,c.hashSessionFile)(e,r);if(!a)return;let n=s().map(e=>e.name).sort().join(","),i=(0,t.createHash)("sha256").update(n).digest("hex");await (0,d.setPerItemCache)("alerts",e,r,"__fired__",i,{firedAt:0},a)}catch{}}function ec(e,t,r,a,n,i){let s=ea(),o=`${e}:${t}/${r}/${a}`,l=i?.priority??V.HIGH,c=i?.forceRefresh??!1,d=en(),m=s.promises.get(o);if(m&&!c){let e=s.pending.find(e=>e.key===o);return e&&l<e.priority&&(e.priority=l,s.pending.sort((e,t)=>e.priority-t.priority||e.addedAt-t.addedAt)),m}if(m&&c){let i=m.catch(()=>{}).then(()=>ec(e,t,r,a,n,{priority:l}));return s.promises.set(o,i),i}let u=()=>{let i,c,d;s.activeWorkers++,s.processing.set(o,{key:o,type:e,projectName:t,sessionId:r,itemName:a,priority:l,startedAt:Date.now()});let m=Date.now(),u=new Promise((e,t)=>{i=e,c=t});u.catch(()=>{}),s.promises.set(o,u);let h=(n,i)=>{s.activeWorkers--,s.processing.delete(o),s.promises.delete(o),function(e){if(!e.completed){e.completed=[];return}e.completed.length>200&&(e.completed=e.completed.slice(0,200))}(s);let l={key:o,type:e,projectName:t,sessionId:r,itemName:a,completedAt:Date.now(),durationMs:Date.now()-m,success:n,error:i};if(s.completed.unshift(l),P.push(l),P.length>=20?F(!0):F(!1),!n&&i&&(s.errors.push({key:o,error:i,at:Date.now()}),s.errors.length>50&&(s.errors=s.errors.slice(-50))),n&&("eval"===e||"enrichment"===e)){let e,a,n=p(r);!function(e,t){let r=ea(),a=e=>e===t||e.startsWith(`${t}/`);if(r.pending.some(t=>("eval"===t.type||"enrichment"===t.type)&&t.projectName===e&&a(t.sessionId)))return!0;for(let[,t]of r.processing)if(("eval"===t.type||"enrichment"===t.type)&&t.projectName===e&&a(t.sessionId))return!0;return!1}(t,n)&&(e=`${t}/${n}`,(a=es.get(e))&&clearTimeout(a),es.set(e,setTimeout(()=>{es.delete(e),ei(t,n).catch(e=>{(0,I.logWarn)(`Alert firing failed for ${t}/${n}:`,e instanceof Error?e.message:e)})},500)))}let c=ea(),d=en();for(;c.activeWorkers<d&&c.pending.length>0;){let e=c.pending.shift(),t=c.pendingExecutors.get(e.key);c.pendingExecutors.delete(e.key),t&&t()}};try{d=n().then(e=>(h(!0),e),e=>{throw h(!1,e instanceof Error?e.message:String(e)),e})}catch(e){h(!1,e instanceof Error?e.message:String(e)),d=Promise.reject(e)}return s.promises.set(o,d),d.then(i,c),d};if(s.activeWorkers<d)return u();let h=new Promise((i,c)=>{!function(e,t){let r=0,a=e.length;for(;r<a;){let n=r+a>>>1;0>=(e[n].priority-t.priority||e[n].addedAt-t.addedAt)?r=n+1:a=n}e.splice(r,0,t)}(s.pending,{key:o,type:e,projectName:t,sessionId:r,itemName:a,priority:l,addedAt:Date.now(),task:n}),s.pendingExecutors.set(o,()=>{u().then(i,c)})});return s.promises.set(o,h),h}function ed(){let e=ea();return{pending:e.pending.map(e=>({key:e.key,type:e.type,projectName:e.projectName,sessionId:e.sessionId,itemName:e.itemName,priority:e.priority,priorityLabel:et(e.priority),addedAt:e.addedAt})),processing:Array.from(e.processing.values()),completed:e.completed,scannedAt:e.scannedAt,backgroundRunning:null!==e.intervalId,recentErrors:e.errors.slice(-10)}}async function em(){try{let t;await (0,r.ensureEvalsLoaded)();let i=(0,a.hasSubagentEvals)()||(0,n.hasSubagentEnrichers)();if(!((0,a.hasEvals)()||(0,n.hasEnrichers)()||i))return void(0,I.logInfo)("Scan skipped: no evals or enrichers registered");ea().scannedAt=Date.now();let s=(0,a.getSessionScopedEvals)(),o=(0,n.getSessionScopedEnrichers)(),l=i?(0,a.getSubagentScopedEvals)():[],h=i?(0,n.getSubagentScopedEnrichers)():[];(0,I.logInfo)(`Scan starting: ${s.length} eval(s), ${o.length} enricher(s), ${l.length} subagent eval(s), ${h.length} subagent enricher(s)`);let f=await N(),g=await (0,S.batchAll)(f.map(e=>async()=>{let t=await C(e.path);return{project:e,sessionFiles:t}}),10),y=[];for(let e of g)if("fulfilled"===e.status)for(let t of e.value.sessionFiles)t.sessionId&&y.push({projectName:e.value.project.name,sessionId:t.sessionId,lastModified:t.lastModified.getTime()});(0,I.logInfo)(`Discovered ${y.length} session(s) across ${f.length} project(s)`),y.sort((e,t)=>t.lastModified-e.lastModified);let w=(t=parseInt(process.env.CLAUDEYE_QUEUE_MAX_ITEMS??"500",10),Number.isNaN(t)?500:t),{processSessionEval:v}=await e.A(90454),{processSessionEnrichment:$}=await e.A(16692),{processSubagentEval:E}=i?await e.A(82400):{processSubagentEval:null},{processSubagentEnrichment:j}=i?await e.A(82937):{processSubagentEnrichment:null},k=globalThis.__CLAUDEYE_QUEUE_CONDITION_REGISTRY__??null,x=k?.fn??null,A=k?.cacheable??!1,W=x?(0,c.hashItemCode)(x):null,P=s.map(e=>(0,c.hashItemCode)(e.fn)),b=o.map(e=>(0,c.hashItemCode)(e.fn)),M=l.map(e=>(0,c.hashItemCode)(e.fn)),L=h.map(e=>(0,c.hashItemCode)(e.fn)),H=0,D=0,T=0,R=0,F=0;for(let e=0;e<y.length;e+=5){if(w>0&&H>=w){let t=y.length-e;(0,I.logInfo)(`Reached maxItems limit (${w}), stopping scan (${t} sessions remaining)`);break}let t=y.slice(e,e+5);for(let e of(await (0,S.batchAll)(t.map(e=>async()=>{let t;if(w>0&&H>=w)return{picked:!1};try{t=await (0,c.hashSessionFile)(e.projectName,e.sessionId)}catch(t){return(0,I.logWarn)(`Hash failed for ${e.projectName}/${e.sessionId}, skipping:`,t instanceof Error?t.message:t),{picked:!1,skipReason:"hash"}}if(x&&W)if(A){let r=await (0,d.getConditionCache)(e.projectName,e.sessionId,W,t);if(null!==r){if(!r.result)return(0,I.logInfo)(`Session ${e.projectName}/${e.sessionId} skipped: queue condition cached false`),{picked:!1,skipReason:"condition"}}else{let{entries:r,rawLines:a}=await (0,m.getCachedSessionLog)(e.projectName,e.sessionId),n=(0,u.calculateLogStats)(r),i={entries:a,stats:n,projectName:e.projectName,sessionId:e.sessionId,source:"session"},s=!1;try{s=await x(i)}catch{s=!1}if((0,d.setConditionCache)(e.projectName,e.sessionId,W,s,t).catch(t=>{(0,I.logWarn)(`Condition cache write failed for ${e.projectName}/${e.sessionId}:`,t instanceof Error?t.message:t)}),!s)return(0,I.logInfo)(`Session ${e.projectName}/${e.sessionId} skipped: queue condition returned false`),{picked:!1,skipReason:"condition"}}}else{let{entries:t,rawLines:r}=await (0,m.getCachedSessionLog)(e.projectName,e.sessionId),a=(0,u.calculateLogStats)(t),n={entries:r,stats:a,projectName:e.projectName,sessionId:e.sessionId,source:"session"},i=!1;try{i=await x(n)}catch{i=!1}if(!i)return(0,I.logInfo)(`Session ${e.projectName}/${e.sessionId} skipped: queue condition returned false`),{picked:!1,skipReason:"condition"}}let r=await Promise.all([...s.map((r,a)=>(0,d.getPerItemCacheWithHook)("evals",e.projectName,e.sessionId,s[a].name,P[a],t).then(e=>({cached:!!e,type:"eval",idx:a}))),...o.map((r,a)=>(0,d.getPerItemCacheWithHook)("enrichments",e.projectName,e.sessionId,o[a].name,b[a],t).then(e=>({cached:!!e,type:"enrichment",idx:a})))]),a=r.filter(e=>!e.cached),n=!1;if(a.length>0){let r=(await Promise.all(a.map(t=>{let r="eval"===t.type?"evals":"enrichments",a="eval"===t.type?s[t.idx].name:o[t.idx].name;return(0,d.getPerItemCacheMeta)(r,e.projectName,e.sessionId,a)}))).every(e=>!!e&&e.contentHash===t),i=p(e.sessionId);for(let t of(eo.set(`${e.projectName}/${i}`,r),a)){if(w>0&&H>=w)break;"eval"===t.type?ec("eval",e.projectName,e.sessionId,s[t.idx].name,()=>v(e.projectName,e.sessionId,s[t.idx].name),{priority:V.LOW}).catch(e=>{(0,I.logWarn)(`Background eval enqueue failed for ${s[t.idx].name}:`,e instanceof Error?e.message:e)}):ec("enrichment",e.projectName,e.sessionId,o[t.idx].name,()=>$(e.projectName,e.sessionId,o[t.idx].name),{priority:V.LOW}).catch(e=>{(0,I.logWarn)(`Background enrichment enqueue failed for ${o[t.idx].name}:`,e instanceof Error?e.message:e)}),H++,n=!0}}let f=[],g=[];if(i){let t=[];try{let{subagentIds:r}=await (0,m.getCachedSessionLog)(e.projectName,e.sessionId);t=r}catch{}for(let r of t){if(w>0&&H>=w)break;let t=`${e.sessionId}/agent-${r}`,a=await (0,c.hashSubagentFile)(e.projectName,e.sessionId,r);if(!a)continue;let i=await Promise.all([...l.map((r,n)=>(0,d.getPerItemCacheWithHook)("evals",e.projectName,t,l[n].name,M[n],a).then(e=>({cached:!!e,type:"eval",idx:n}))),...h.map((r,n)=>(0,d.getPerItemCacheWithHook)("enrichments",e.projectName,t,h[n].name,L[n],a).then(e=>({cached:!!e,type:"enrichment",idx:n})))]);for(let e of i.filter(e=>e.cached))g.push("eval"===e.type?`sub(${r}):eval:${l[e.idx].name}`:`sub(${r}):enrichment:${h[e.idx].name}`);let s=i.filter(e=>!e.cached);if(0===s.length)continue;let o=(await Promise.all(s.map(r=>{let a="eval"===r.type?"evals":"enrichments",n="eval"===r.type?l[r.idx].name:h[r.idx].name;return(0,d.getPerItemCacheMeta)(a,e.projectName,t,n)}))).every(e=>!!e&&e.contentHash===a),m=p(e.sessionId),u=eo.get(`${e.projectName}/${m}`);for(let a of(void 0!==u?eo.set(`${e.projectName}/${m}`,u&&o):eo.set(`${e.projectName}/${m}`,o),s)){if(w>0&&H>=w)break;"eval"===a.type?ec("eval",e.projectName,t,l[a.idx].name,()=>E(e.projectName,e.sessionId,r,l[a.idx].name),{priority:V.LOW}).catch(e=>{(0,I.logWarn)(`Background subagent eval enqueue failed for ${l[a.idx].name}:`,e instanceof Error?e.message:e)}):ec("enrichment",e.projectName,t,h[a.idx].name,()=>j(e.projectName,e.sessionId,r,h[a.idx].name),{priority:V.LOW}).catch(e=>{(0,I.logWarn)(`Background subagent enrichment enqueue failed for ${h[a.idx].name}:`,e instanceof Error?e.message:e)}),H++,n=!0,f.push("eval"===a.type?`sub(${r}):eval:${l[a.idx].name}`:`sub(${r}):enrichment:${h[a.idx].name}`)}}}if(n){let t=r.filter(e=>!e.cached).map(e=>"eval"===e.type?`eval:${s[e.idx].name}`:`enrichment:${o[e.idx].name}`),a=r.filter(e=>e.cached).map(e=>"eval"===e.type?`eval:${s[e.idx].name}`:`enrichment:${o[e.idx].name}`),n=[...t,...f],i=[...a,...g];(0,I.logInfo)(`Session ${e.projectName}/${e.sessionId} picked: ${n.length} uncached (${n.join(", ")}), ${i.length} cached (${i.join(", ")})`)}else(0,I.logInfo)(`Session ${e.projectName}/${e.sessionId} skipped: all items cached`);return{picked:n,skipReason:n?void 0:"cached"}}),5)))"fulfilled"===e.status&&(e.value.picked?D++:"cached"===e.value.skipReason?T++:"condition"===e.value.skipReason?R++:"hash"===e.value.skipReason&&F++);e+5<y.length&&await new Promise(e=>setTimeout(e,0))}let O=T+R+F,U=O>0?`, skipped ${O} (${T} cached, ${R} condition-false, ${F} hash-error)`:"";(0,I.logInfo)(`Scan complete: enqueued ${H} item(s) across ${D} session(s)${U}`),(0,_.trackEvent)("queue_scan_completed",{version:process.env.npm_package_version,sessions_scanned:y.length,items_enqueued:H})}catch(e){(0,I.logError)("scanAndEnqueue error:",e)}}function ep(e){let t=ea();if(t.intervalId)return;(0,I.logInfo)(`Starting background processor (interval: ${e}s)`),em().catch(e=>{(0,I.logError)("Initial scan error:",e)});let r=()=>{t.intervalId=setTimeout(async()=>{try{await em()}catch(e){(0,I.logError)("Background processing error:",e)}null!==t.intervalId&&r()},1e3*e)};r()}function eu(){let e=ea();e.intervalId&&(clearTimeout(e.intervalId),e.intervalId=null,(0,I.logInfo)("Background processor stopped"))}async function eh(e){return U(),{entries:await Q(e),totalPages:await J(),page:e}}async function ef(e,t){U();let r=(await z()).filter(t=>(!e.type||t.type===e.type)&&(!e.itemName||!!t.itemName.toLowerCase().includes(e.itemName.toLowerCase()))&&(!e.sessionId||!!t.sessionId.toLowerCase().includes(e.sessionId.toLowerCase()))),a=Math.max(1,Math.ceil(r.length/25)),n=(t-1)*25;return{entries:r.slice(n,n+25),totalPages:a,page:t}}e.s(["HIGH",0,Z,"LOW",0,ee,"Priority",0,V,"clearAlertFiredMarker",()=>el,"getCompletedHistory",()=>eh,"getQueueStatus",()=>ed,"priorityLabel",()=>et,"queuePerItem",()=>ec,"scanAndEnqueue",()=>em,"searchCompletedHistory",()=>ef,"startBackgroundProcessor",()=>ep,"stopBackgroundProcessor",()=>eu,"tryFireSessionAlerts",()=>ei],67)}];
2
2
 
3
3
  //# sourceMappingURL=lib_eval-queue_ts_32d171f8._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[8265,e=>{"use strict";var t=e.i(54799),r=e.i(28753),i=e.i(77879),n=e.i(84234);let a="__CLAUDEYE_ALERT_REGISTRY__";function o(){let e=globalThis;return e[a]||(e[a]=[]),e[a]}function s(){return o().length>0}async function l(e,t=!1){if(!s())return;let r=o().filter(e=>!t||!e.suppressOnRecompute);await Promise.allSettled(r.map(async t=>{try{await t.fn(e)}catch(e){console.error(`[alert] Error in alert "${t.name}":`,e instanceof Error?e.message:e)}}))}e.i(14214);var c=e.i(88107),u=e.i(39864);e.i(54214),e.i(26287);var d=e.i(24868),p=e.i(14747),f=e.i(81580),m=e.i(83534),h=e.i(40911),g=e.i(41444);async function y(e,t){try{return(await (0,d.stat)(e)).mtime}catch(e){return(0,h.logWarn)(`Failed to stat ${t}:`,e),new Date(0)}}async function w(e){try{if(!(await (0,d.stat)(e)).isDirectory())return null;return await (0,d.readdir)(e,{withFileTypes:!0})}catch{return null}}async function E(){try{let e=(0,f.getClaudeProjectsPath)(),t=await w(e);if(!t)return[];let r=await Promise.all(t.filter(e=>e.isDirectory()).map(async t=>{let r=(0,p.join)(e,t.name),i=await y(r,t.name);return{name:t.name,path:r,isDirectory:!0,lastModified:i,lastModifiedFormatted:(0,g.formatDate)(i)}}));return r.sort((e,t)=>t.lastModified.getTime()-e.lastModified.getTime()),r}catch(e){return(0,h.logError)("Error reading project folders:",e),[]}}function v(e){let t=e.match(/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/i);return t?t[0]:void 0}async function I(e){try{let t=await w(e);if(!t)return[];let r=t.filter(e=>e.isFile()&&e.name.endsWith(".jsonl")&&v(e.name)),i=await Promise.all(r.map(async t=>{let r=(0,p.join)(e,t.name),i=await y(r,t.name);return{name:t.name,path:r,lastModified:i,lastModifiedFormatted:(0,g.formatDate)(i),sessionId:v(t.name)}}));return i.sort((e,t)=>t.lastModified.getTime()-e.lastModified.getTime()),i}catch(e){return(0,h.logError)("Error reading session files:",e),[]}}(0,m.runtimeCache)(E,30),(0,m.runtimeCache)(e=>I(e),30),e.i(71809);var j=e.i(46786);let C=(0,p.join)((0,j.homedir)(),".claudeye","cache","completed-history"),k="current.jsonl",A=[],_=null,D=0,P=!1,W=!1,M=Promise.resolve(),$=0;async function H(){W||(await (0,d.mkdir)(C,{recursive:!0}),W=!0)}function T(e){if(e){_&&(clearTimeout(_),_=null),S();return}_||(_=setTimeout(()=>{_=null,S()},2e3))}function S(){M=M.then(()=>F()).catch(e=>{(0,h.logWarn)("completed-store flush error:",e instanceof Error?e.message:e)})}async function F(){if(0===A.length)return;await H(),P||(D=await R((0,p.join)(C,k)),P=!0);let e=A.splice(0),t=(0,p.join)(C,k),r=0;try{for(;r<e.length;){D>=25&&await N();let i=25-D;if(i<=0)throw Error("completed-store: zero remaining after rotate — aborting to prevent infinite loop");let n=e.slice(r,r+i),a=n.map(e=>JSON.stringify(e)).join("\n")+"\n";await L(t,a),D+=n.length,r+=n.length,D>=25&&await N()}}catch(i){let t=e.slice(r);throw t.length>0&&A.unshift(...t),i}}async function N(){let e=(0,p.join)(C,k),t=`page-${Date.now()}-${$++}.jsonl`,r=(0,p.join)(C,t);await (0,d.rename)(e,r),D=0}async function L(e,t){let r=await (0,d.readFile)(e,"utf-8").catch(()=>"");await (0,d.writeFile)(e,r+t,"utf-8")}async function R(e){try{let t=await (0,d.readFile)(e,"utf-8");if(!t.trim())return 0;return t.trim().split("\n").length}catch{return 0}}async function U(e){if(await M,await H(),e<1)return[];if(1===e){let e=(0,p.join)(C,k);return(await x(e)).reverse()}let t=await G(),r=e-2;return r>=t.length?[]:(await x((0,p.join)(C,t[r]))).reverse()}async function O(){return await H(),1+(await G()).length}async function x(e){try{let t=await (0,d.readFile)(e,"utf-8");if(!t.trim())return[];let r=[];for(let e of t.trim().split("\n"))try{r.push(JSON.parse(e))}catch{}return r}catch{return[]}}async function G(){try{return(await (0,d.readdir)(C)).filter(e=>e.startsWith("page-")&&e.endsWith(".jsonl")).sort((e,t)=>{let r=e.slice(5,-6).split("-"),i=t.slice(5,-6).split("-"),n=parseInt(r[0],10),a=parseInt(i[0],10);if(n!==a)return a-n;let o=r.length>1?parseInt(r[1],10):0;return(i.length>1?parseInt(i[1],10):0)-o})}catch{return[]}}let b={HIGH:0,LOW:10};b.HIGH,b.LOW;let Y="__CLAUDEYE_QUEUE__";function Q(){let e=globalThis;return e[Y]||(e[Y]={pending:[],pendingExecutors:new Map,processing:new Map,promises:new Map,completed:[],activeWorkers:0,scannedAt:0,intervalId:null,errors:[]}),e[Y]}let J=()=>parseInt(process.env.CLAUDEYE_QUEUE_CONCURRENCY??"2",10)||2;async function q(e,a){try{if(!s())return;await (0,r.ensureEvalsLoaded)();let d=await (0,c.hashSessionFile)(e,a);if(!d)return;let p=(0,i.getSessionScopedEvals)(),f=(0,n.getSessionScopedEnrichers)(),[m,h]=await Promise.all([Promise.all(p.map(t=>(0,u.getPerItemCacheWithHook)("evals",e,a,t.name,(0,c.hashItemCode)(t.fn),d))),Promise.all(f.map(t=>(0,u.getPerItemCacheWithHook)("enrichments",e,a,t.name,(0,c.hashItemCode)(t.fn),d)))]);if(m.some(e=>!e)||h.some(e=>!e))return;let g=o().map(e=>e.name).sort().join(","),y=(0,t.createHash)("sha256").update(g).digest("hex"),w=await (0,u.getPerItemCacheWithHook)("alerts",e,a,"__fired__",y,d);if(w&&w.value.firedAt>0)return;let E=m.map(e=>e.value),v=h.map(e=>e.value),I=E.length>0?{results:E,totalDurationMs:E.reduce((e,t)=>e+t.durationMs,0),passCount:E.filter(e=>!e.error&&!e.skipped&&e.pass).length,failCount:E.filter(e=>!e.error&&!e.skipped&&!e.pass).length,errorCount:E.filter(e=>!!e.error).length,skippedCount:E.filter(e=>!!e.skipped).length}:void 0,j=v.length>0?{results:v,totalDurationMs:v.reduce((e,t)=>e+t.durationMs,0),errorCount:v.filter(e=>!!e.error).length,skippedCount:v.filter(e=>!!e.skipped).length}:void 0,C=B.get(`${e}/${a}`)??!1;B.delete(`${e}/${a}`),await l({projectName:e,sessionId:a,evalSummary:I,enrichSummary:j},C);try{await (0,u.setPerItemCache)("alerts",e,a,"__fired__",y,{firedAt:Date.now()},d)}catch{}}catch(e){(0,h.logError)("tryFireSessionAlerts error:",e instanceof Error?e.message:e)}}let z=new Map,B=new Map;function K(){let e=Q();return{pending:e.pending.map(e=>({key:e.key,type:e.type,projectName:e.projectName,sessionId:e.sessionId,itemName:e.itemName,priority:e.priority,priorityLabel:e.priority<=b.HIGH?"HIGH":"LOW",addedAt:e.addedAt})),processing:Array.from(e.processing.values()),completed:e.completed,scannedAt:e.scannedAt,backgroundRunning:null!==e.intervalId,recentErrors:e.errors.slice(-10)}}async function V(e){return _&&(clearTimeout(_),_=null),0!==A.length&&(M=M.then(()=>F()).catch(e=>{(0,h.logWarn)("completed-store flushNow error:",e instanceof Error?e.message:e)})),{entries:await U(e),totalPages:await O(),page:e}}e.s(["Priority",0,b,"getCompletedHistory",()=>V,"getQueueStatus",()=>K,"queuePerItem",()=>function e(t,r,i,n,a,o){let s=Q(),l=`${t}:${r}/${i}/${n}`,c=o?.priority??b.HIGH,u=o?.forceRefresh??!1,d=J(),p=s.promises.get(l);if(p&&!u){let e=s.pending.find(e=>e.key===l);return e&&c<e.priority&&(e.priority=c,s.pending.sort((e,t)=>e.priority-t.priority||e.addedAt-t.addedAt)),p}if(p&&u){let o=p.catch(()=>{}).then(()=>e(t,r,i,n,a,{priority:c}));return s.promises.set(l,o),o}let f=()=>{let e,o,u;s.activeWorkers++,s.processing.set(l,{key:l,type:t,projectName:r,sessionId:i,itemName:n,priority:c,startedAt:Date.now()});let d=Date.now(),p=new Promise((t,r)=>{e=t,o=r});p.catch(()=>{}),s.promises.set(l,p);let f=(e,a)=>{s.activeWorkers--,s.processing.delete(l),s.promises.delete(l),function(e){if(!e.completed){e.completed=[];return}e.completed.length>200&&(e.completed=e.completed.slice(0,200))}(s);let o={key:l,type:t,projectName:r,sessionId:i,itemName:n,completedAt:Date.now(),durationMs:Date.now()-d,success:e,error:a};if(s.completed.unshift(o),A.push(o),A.length>=20?T(!0):T(!1),!e&&a&&(s.errors.push({key:l,error:a,at:Date.now()}),s.errors.length>50&&(s.errors=s.errors.slice(-50))),e&&("eval"===t||"enrichment"===t)){let e,t,n=i.includes("/")?i.split("/")[0]:i;!function(e,t){let r=Q(),i=e=>e===t||e.startsWith(`${t}/`);if(r.pending.some(t=>("eval"===t.type||"enrichment"===t.type)&&t.projectName===e&&i(t.sessionId)))return!0;for(let[,t]of r.processing)if(("eval"===t.type||"enrichment"===t.type)&&t.projectName===e&&i(t.sessionId))return!0;return!1}(r,n)&&(e=`${r}/${n}`,(t=z.get(e))&&clearTimeout(t),z.set(e,setTimeout(()=>{z.delete(e),q(r,n).catch(e=>{(0,h.logWarn)(`Alert firing failed for ${r}/${n}:`,e instanceof Error?e.message:e)})},500)))}let c=Q(),u=J();for(;c.activeWorkers<u&&c.pending.length>0;){let e=c.pending.shift(),t=c.pendingExecutors.get(e.key);c.pendingExecutors.delete(e.key),t&&t()}};try{u=a().then(e=>(f(!0),e),e=>{throw f(!1,e instanceof Error?e.message:String(e)),e})}catch(e){f(!1,e instanceof Error?e.message:String(e)),u=Promise.reject(e)}return s.promises.set(l,u),u.then(e,o),u};if(s.activeWorkers<d)return f();let m=new Promise((e,o)=>{!function(e,t){let r=0,i=e.length;for(;r<i;){let n=r+i>>>1;0>=(e[n].priority-t.priority||e[n].addedAt-t.addedAt)?r=n+1:i=n}e.splice(r,0,t)}(s.pending,{key:l,type:t,projectName:r,sessionId:i,itemName:n,priority:c,addedAt:Date.now(),task:a}),s.pendingExecutors.set(l,()=>{f().then(e,o)})});return s.promises.set(l,m),m}],8265)}];
1
+ module.exports=[8265,e=>{"use strict";var t=e.i(54799),r=e.i(28753),i=e.i(77879),n=e.i(84234);let a="__CLAUDEYE_ALERT_REGISTRY__";function o(){let e=globalThis;return e[a]||(e[a]=[]),e[a]}function s(){return o().length>0}async function l(e,t=!1){if(!s())return;let r=o().filter(e=>!t||!e.suppressOnRecompute);await Promise.allSettled(r.map(async t=>{try{await t.fn(e)}catch(e){console.error(`[alert] Error in alert "${t.name}":`,e instanceof Error?e.message:e)}}))}e.i(14214);var c=e.i(88107),u=e.i(39864);e.i(54214),e.i(26287);var d=e.i(24868),p=e.i(14747),f=e.i(81580),m=e.i(83534),h=e.i(40911),g=e.i(41444);async function y(e,t){try{return(await (0,d.stat)(e)).mtime}catch(e){return(0,h.logWarn)(`Failed to stat ${t}:`,e),new Date(0)}}async function w(e){try{if(!(await (0,d.stat)(e)).isDirectory())return null;return await (0,d.readdir)(e,{withFileTypes:!0})}catch{return null}}async function E(){try{let e=(0,f.getClaudeProjectsPath)(),t=await w(e);if(!t)return[];let r=await Promise.all(t.filter(e=>e.isDirectory()).map(async t=>{let r=(0,p.join)(e,t.name),i=await y(r,t.name);return{name:t.name,path:r,isDirectory:!0,lastModified:i,lastModifiedFormatted:(0,g.formatDate)(i)}}));return r.sort((e,t)=>t.lastModified.getTime()-e.lastModified.getTime()),r}catch(e){return(0,h.logError)("Error reading project folders:",e),[]}}function v(e){let t=e.match(/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/i);return t?t[0]:void 0}async function I(e){try{let t=await w(e);if(!t)return[];let r=t.filter(e=>e.isFile()&&e.name.endsWith(".jsonl")&&v(e.name)),i=await Promise.all(r.map(async t=>{let r=(0,p.join)(e,t.name),i=await y(r,t.name);return{name:t.name,path:r,lastModified:i,lastModifiedFormatted:(0,g.formatDate)(i),sessionId:v(t.name)}}));return i.sort((e,t)=>t.lastModified.getTime()-e.lastModified.getTime()),i}catch(e){return(0,h.logError)("Error reading session files:",e),[]}}(0,m.runtimeCache)(E,30),(0,m.runtimeCache)(e=>I(e),30),e.i(71809),e.i(2157);var j=e.i(50227),C=e.i(60526);e.i(66680),e.i(74533);let k=j.default.join(C.default.homedir(),".claudeye");j.default.join(k,"instance-id");var A=e.i(46786);let _=(0,p.join)((0,A.homedir)(),".claudeye","cache","completed-history"),D="current.jsonl",P=[],W=null,M=0,$=!1,H=!1,T=Promise.resolve(),S=0;async function F(){H||(await (0,d.mkdir)(_,{recursive:!0}),H=!0)}function N(e){if(e){W&&(clearTimeout(W),W=null),L();return}W||(W=setTimeout(()=>{W=null,L()},2e3))}function L(){T=T.then(()=>O()).catch(e=>{(0,h.logWarn)("completed-store flush error:",e instanceof Error?e.message:e)})}async function O(){if(0===P.length)return;await F(),$||(M=await x((0,p.join)(_,D)),$=!0);let e=P.splice(0),t=(0,p.join)(_,D),r=0;try{for(;r<e.length;){M>=25&&await R();let i=25-M;if(i<=0)throw Error("completed-store: zero remaining after rotate — aborting to prevent infinite loop");let n=e.slice(r,r+i),a=n.map(e=>JSON.stringify(e)).join("\n")+"\n";await U(t,a),M+=n.length,r+=n.length,M>=25&&await R()}}catch(i){let t=e.slice(r);throw t.length>0&&P.unshift(...t),i}}async function R(){let e=(0,p.join)(_,D),t=`page-${Date.now()}-${S++}.jsonl`,r=(0,p.join)(_,t);await (0,d.rename)(e,r),M=0}async function U(e,t){let r=await (0,d.readFile)(e,"utf-8").catch(()=>"");await (0,d.writeFile)(e,r+t,"utf-8")}async function x(e){try{let t=await (0,d.readFile)(e,"utf-8");if(!t.trim())return 0;return t.trim().split("\n").length}catch{return 0}}async function G(e){if(await T,await F(),e<1)return[];if(1===e){let e=(0,p.join)(_,D);return(await Y(e)).reverse()}let t=await Q(),r=e-2;return r>=t.length?[]:(await Y((0,p.join)(_,t[r]))).reverse()}async function b(){return await F(),1+(await Q()).length}async function Y(e){try{let t=await (0,d.readFile)(e,"utf-8");if(!t.trim())return[];let r=[];for(let e of t.trim().split("\n"))try{r.push(JSON.parse(e))}catch{}return r}catch{return[]}}async function Q(){try{return(await (0,d.readdir)(_)).filter(e=>e.startsWith("page-")&&e.endsWith(".jsonl")).sort((e,t)=>{let r=e.slice(5,-6).split("-"),i=t.slice(5,-6).split("-"),n=parseInt(r[0],10),a=parseInt(i[0],10);if(n!==a)return a-n;let o=r.length>1?parseInt(r[1],10):0;return(i.length>1?parseInt(i[1],10):0)-o})}catch{return[]}}let J={HIGH:0,LOW:10};J.HIGH,J.LOW;let q="__CLAUDEYE_QUEUE__";function z(){let e=globalThis;return e[q]||(e[q]={pending:[],pendingExecutors:new Map,processing:new Map,promises:new Map,completed:[],activeWorkers:0,scannedAt:0,intervalId:null,errors:[]}),e[q]}let B=()=>parseInt(process.env.CLAUDEYE_QUEUE_CONCURRENCY??"2",10)||2;async function K(e,a){try{if(!s())return;await (0,r.ensureEvalsLoaded)();let d=await (0,c.hashSessionFile)(e,a);if(!d)return;let p=(0,i.getSessionScopedEvals)(),f=(0,n.getSessionScopedEnrichers)(),[m,h]=await Promise.all([Promise.all(p.map(t=>(0,u.getPerItemCacheWithHook)("evals",e,a,t.name,(0,c.hashItemCode)(t.fn),d))),Promise.all(f.map(t=>(0,u.getPerItemCacheWithHook)("enrichments",e,a,t.name,(0,c.hashItemCode)(t.fn),d)))]);if(m.some(e=>!e)||h.some(e=>!e))return;let g=o().map(e=>e.name).sort().join(","),y=(0,t.createHash)("sha256").update(g).digest("hex"),w=await (0,u.getPerItemCacheWithHook)("alerts",e,a,"__fired__",y,d);if(w&&w.value.firedAt>0)return;let E=m.map(e=>e.value),v=h.map(e=>e.value),I=E.length>0?{results:E,totalDurationMs:E.reduce((e,t)=>e+t.durationMs,0),passCount:E.filter(e=>!e.error&&!e.skipped&&e.pass).length,failCount:E.filter(e=>!e.error&&!e.skipped&&!e.pass).length,errorCount:E.filter(e=>!!e.error).length,skippedCount:E.filter(e=>!!e.skipped).length}:void 0,j=v.length>0?{results:v,totalDurationMs:v.reduce((e,t)=>e+t.durationMs,0),errorCount:v.filter(e=>!!e.error).length,skippedCount:v.filter(e=>!!e.skipped).length}:void 0,C=X.get(`${e}/${a}`)??!1;X.delete(`${e}/${a}`),await l({projectName:e,sessionId:a,evalSummary:I,enrichSummary:j},C);try{await (0,u.setPerItemCache)("alerts",e,a,"__fired__",y,{firedAt:Date.now()},d)}catch{}}catch(e){(0,h.logError)("tryFireSessionAlerts error:",e instanceof Error?e.message:e)}}let V=new Map,X=new Map;function Z(){let e=z();return{pending:e.pending.map(e=>({key:e.key,type:e.type,projectName:e.projectName,sessionId:e.sessionId,itemName:e.itemName,priority:e.priority,priorityLabel:e.priority<=J.HIGH?"HIGH":"LOW",addedAt:e.addedAt})),processing:Array.from(e.processing.values()),completed:e.completed,scannedAt:e.scannedAt,backgroundRunning:null!==e.intervalId,recentErrors:e.errors.slice(-10)}}async function ee(e){return W&&(clearTimeout(W),W=null),0!==P.length&&(T=T.then(()=>O()).catch(e=>{(0,h.logWarn)("completed-store flushNow error:",e instanceof Error?e.message:e)})),{entries:await G(e),totalPages:await b(),page:e}}e.s(["Priority",0,J,"getCompletedHistory",()=>ee,"getQueueStatus",()=>Z,"queuePerItem",()=>function e(t,r,i,n,a,o){let s=z(),l=`${t}:${r}/${i}/${n}`,c=o?.priority??J.HIGH,u=o?.forceRefresh??!1,d=B(),p=s.promises.get(l);if(p&&!u){let e=s.pending.find(e=>e.key===l);return e&&c<e.priority&&(e.priority=c,s.pending.sort((e,t)=>e.priority-t.priority||e.addedAt-t.addedAt)),p}if(p&&u){let o=p.catch(()=>{}).then(()=>e(t,r,i,n,a,{priority:c}));return s.promises.set(l,o),o}let f=()=>{let e,o,u;s.activeWorkers++,s.processing.set(l,{key:l,type:t,projectName:r,sessionId:i,itemName:n,priority:c,startedAt:Date.now()});let d=Date.now(),p=new Promise((t,r)=>{e=t,o=r});p.catch(()=>{}),s.promises.set(l,p);let f=(e,a)=>{s.activeWorkers--,s.processing.delete(l),s.promises.delete(l),function(e){if(!e.completed){e.completed=[];return}e.completed.length>200&&(e.completed=e.completed.slice(0,200))}(s);let o={key:l,type:t,projectName:r,sessionId:i,itemName:n,completedAt:Date.now(),durationMs:Date.now()-d,success:e,error:a};if(s.completed.unshift(o),P.push(o),P.length>=20?N(!0):N(!1),!e&&a&&(s.errors.push({key:l,error:a,at:Date.now()}),s.errors.length>50&&(s.errors=s.errors.slice(-50))),e&&("eval"===t||"enrichment"===t)){let e,t,n,a=-1===(e=i.indexOf("/"))?i:i.slice(0,e);!function(e,t){let r=z(),i=e=>e===t||e.startsWith(`${t}/`);if(r.pending.some(t=>("eval"===t.type||"enrichment"===t.type)&&t.projectName===e&&i(t.sessionId)))return!0;for(let[,t]of r.processing)if(("eval"===t.type||"enrichment"===t.type)&&t.projectName===e&&i(t.sessionId))return!0;return!1}(r,a)&&(t=`${r}/${a}`,(n=V.get(t))&&clearTimeout(n),V.set(t,setTimeout(()=>{V.delete(t),K(r,a).catch(e=>{(0,h.logWarn)(`Alert firing failed for ${r}/${a}:`,e instanceof Error?e.message:e)})},500)))}let c=z(),u=B();for(;c.activeWorkers<u&&c.pending.length>0;){let e=c.pending.shift(),t=c.pendingExecutors.get(e.key);c.pendingExecutors.delete(e.key),t&&t()}};try{u=a().then(e=>(f(!0),e),e=>{throw f(!1,e instanceof Error?e.message:String(e)),e})}catch(e){f(!1,e instanceof Error?e.message:String(e)),u=Promise.reject(e)}return s.promises.set(l,u),u.then(e,o),u};if(s.activeWorkers<d)return f();let m=new Promise((e,o)=>{!function(e,t){let r=0,i=e.length;for(;r<i;){let n=r+i>>>1;0>=(e[n].priority-t.priority||e[n].addedAt-t.addedAt)?r=n+1:i=n}e.splice(r,0,t)}(s.pending,{key:l,type:t,projectName:r,sessionId:i,itemName:n,priority:c,addedAt:Date.now(),task:a}),s.pendingExecutors.set(l,()=>{f().then(e,o)})});return s.promises.set(l,m),m}],8265)}];
2
2
 
3
3
  //# sourceMappingURL=lib_eval-queue_ts_642b3543._.js.map