fleetlens 0.7.1 → 0.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (130) hide show
  1. package/app/apps/web/.next/BUILD_ID +1 -1
  2. package/app/apps/web/.next/build-manifest.json +3 -3
  3. package/app/apps/web/.next/prerender-manifest.json +3 -3
  4. package/app/apps/web/.next/server/app/_global-error.html +1 -1
  5. package/app/apps/web/.next/server/app/_global-error.rsc +1 -1
  6. package/app/apps/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  7. package/app/apps/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  8. package/app/apps/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  9. package/app/apps/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  10. package/app/apps/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  11. package/app/apps/web/.next/server/app/_not-found/page.js.nft.json +1 -1
  12. package/app/apps/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  13. package/app/apps/web/.next/server/app/api/ask/route.js +1 -1
  14. package/app/apps/web/.next/server/app/api/ask/route.js.nft.json +1 -1
  15. package/app/apps/web/.next/server/app/api/digest/day/[date]/route.js +3 -3
  16. package/app/apps/web/.next/server/app/api/digest/day/[date]/route.js.nft.json +1 -1
  17. package/app/apps/web/.next/server/app/api/digest/month/[yearMonth]/route.js +3 -3
  18. package/app/apps/web/.next/server/app/api/digest/month/[yearMonth]/route.js.nft.json +1 -1
  19. package/app/apps/web/.next/server/app/api/digest/month-index/route.js +2 -2
  20. package/app/apps/web/.next/server/app/api/digest/month-index/route.js.nft.json +1 -1
  21. package/app/apps/web/.next/server/app/api/digest/week/[startDate]/route.js +3 -3
  22. package/app/apps/web/.next/server/app/api/digest/week/[startDate]/route.js.nft.json +1 -1
  23. package/app/apps/web/.next/server/app/api/digest/week-index/route.js +2 -2
  24. package/app/apps/web/.next/server/app/api/digest/week-index/route.js.nft.json +1 -1
  25. package/app/apps/web/.next/server/app/api/events/route.js +1 -1
  26. package/app/apps/web/.next/server/app/api/events/route.js.nft.json +1 -1
  27. package/app/apps/web/.next/server/app/api/jobs/route.js.nft.json +1 -1
  28. package/app/apps/web/.next/server/app/api/runs/[runId]/route.js.nft.json +1 -1
  29. package/app/apps/web/.next/server/app/api/runs/[runId]/stream/route.js.nft.json +1 -1
  30. package/app/apps/web/.next/server/app/api/settings/route.js +4 -4
  31. package/app/apps/web/.next/server/app/api/settings/route.js.nft.json +1 -1
  32. package/app/apps/web/.next/server/app/changelog/page.js.nft.json +1 -1
  33. package/app/apps/web/.next/server/app/changelog/page_client-reference-manifest.js +1 -1
  34. package/app/apps/web/.next/server/app/day/[date]/page.js.nft.json +1 -1
  35. package/app/apps/web/.next/server/app/day/[date]/page_client-reference-manifest.js +1 -1
  36. package/app/apps/web/.next/server/app/day/page.js.nft.json +1 -1
  37. package/app/apps/web/.next/server/app/day/page_client-reference-manifest.js +1 -1
  38. package/app/apps/web/.next/server/app/digest/[date]/page.js.nft.json +1 -1
  39. package/app/apps/web/.next/server/app/digest/[date]/page_client-reference-manifest.js +1 -1
  40. package/app/apps/web/.next/server/app/digest/page.js.nft.json +1 -1
  41. package/app/apps/web/.next/server/app/digest/page_client-reference-manifest.js +1 -1
  42. package/app/apps/web/.next/server/app/insights/[key]/page.js.nft.json +1 -1
  43. package/app/apps/web/.next/server/app/insights/[key]/page_client-reference-manifest.js +1 -1
  44. package/app/apps/web/.next/server/app/insights/page.js.nft.json +1 -1
  45. package/app/apps/web/.next/server/app/insights/page_client-reference-manifest.js +1 -1
  46. package/app/apps/web/.next/server/app/page.js.nft.json +1 -1
  47. package/app/apps/web/.next/server/app/page_client-reference-manifest.js +1 -1
  48. package/app/apps/web/.next/server/app/parallelism/page.js.nft.json +1 -1
  49. package/app/apps/web/.next/server/app/parallelism/page_client-reference-manifest.js +1 -1
  50. package/app/apps/web/.next/server/app/projects/[slug]/page.js.nft.json +1 -1
  51. package/app/apps/web/.next/server/app/projects/[slug]/page_client-reference-manifest.js +1 -1
  52. package/app/apps/web/.next/server/app/projects/page.js.nft.json +1 -1
  53. package/app/apps/web/.next/server/app/projects/page_client-reference-manifest.js +1 -1
  54. package/app/apps/web/.next/server/app/runs/page.js.nft.json +1 -1
  55. package/app/apps/web/.next/server/app/runs/page_client-reference-manifest.js +1 -1
  56. package/app/apps/web/.next/server/app/sessions/[id]/page.js.nft.json +1 -1
  57. package/app/apps/web/.next/server/app/sessions/[id]/page_client-reference-manifest.js +1 -1
  58. package/app/apps/web/.next/server/app/sessions/page.js.nft.json +1 -1
  59. package/app/apps/web/.next/server/app/sessions/page_client-reference-manifest.js +1 -1
  60. package/app/apps/web/.next/server/app/settings/page.js.nft.json +1 -1
  61. package/app/apps/web/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  62. package/app/apps/web/.next/server/app/usage/page.js.nft.json +1 -1
  63. package/app/apps/web/.next/server/app/usage/page_client-reference-manifest.js +1 -1
  64. package/app/apps/web/.next/server/chunks/[root-of-the-server]__07qxzx4._.js +9 -0
  65. package/app/apps/web/.next/server/chunks/[root-of-the-server]__0fu2xfy._.js +5 -0
  66. package/app/apps/web/.next/server/chunks/[root-of-the-server]__0gfd42k._.js +9 -0
  67. package/app/apps/web/.next/server/chunks/[root-of-the-server]__0i.m8y0._.js +3 -0
  68. package/app/apps/web/.next/server/chunks/[root-of-the-server]__0iy5aqy._.js +9 -0
  69. package/app/apps/web/.next/server/chunks/[root-of-the-server]__0nh7-nf._.js +3 -0
  70. package/app/apps/web/.next/server/chunks/[root-of-the-server]__0nvdffv._.js +3 -0
  71. package/app/apps/web/.next/server/chunks/[root-of-the-server]__0s2~c3g._.js +3 -0
  72. package/app/apps/web/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_0ck.78s.js +3 -3
  73. package/app/apps/web/.next/server/chunks/packages_09wmnv.._.js +3 -0
  74. package/app/apps/web/.next/server/chunks/packages_0o6.gpk._.js +3 -0
  75. package/app/apps/web/.next/server/chunks/packages_entries_dist_node_0bckr7-.js +13 -13
  76. package/app/apps/web/.next/server/chunks/packages_parser_dist_fs_122oe0-.js +1 -1
  77. package/app/apps/web/.next/server/chunks/ssr/[root-of-the-server]__0d~2~le._.js +1 -1
  78. package/app/apps/web/.next/server/chunks/ssr/[root-of-the-server]__0r4tks8._.js +1 -1
  79. package/app/apps/web/.next/server/chunks/ssr/[root-of-the-server]__0s4dg1y._.js +3 -0
  80. package/app/apps/web/.next/server/chunks/ssr/[root-of-the-server]__0tejjy_._.js +1 -1
  81. package/app/apps/web/.next/server/chunks/ssr/[root-of-the-server]__0w52fbc._.js +3 -3
  82. package/app/apps/web/.next/server/chunks/ssr/_0jw2sm7._.js +1 -1
  83. package/app/apps/web/.next/server/chunks/ssr/_0xu2pvc._.js +1 -1
  84. package/app/apps/web/.next/server/chunks/ssr/apps_web_components_0ly1xes._.js +1 -1
  85. package/app/apps/web/.next/server/chunks/ssr/apps_web_components_0txtsv5._.js +1 -1
  86. package/app/apps/web/.next/server/chunks/ssr/apps_web_components_usage-charts-dashboard_tsx_0bgr_uv._.js +1 -1
  87. package/app/apps/web/.next/server/chunks/ssr/apps_web_lib_0m67-xi._.js +1 -1
  88. package/app/apps/web/.next/server/chunks/ssr/packages_entries_dist_node_0_271yr.js +1 -1
  89. package/app/apps/web/.next/server/chunks/ssr/packages_parser_dist_10_oegc._.js +1 -1
  90. package/app/apps/web/.next/server/middleware-build-manifest.js +3 -3
  91. package/app/apps/web/.next/server/pages/500.html +1 -1
  92. package/app/apps/web/.next/server/server-reference-manifest.js +1 -1
  93. package/app/apps/web/.next/server/server-reference-manifest.json +1 -1
  94. package/app/apps/web/.next/static/chunks/04a36uhu~p_z-.css +1 -0
  95. package/app/apps/web/.next/static/chunks/{0q2vd~aj.1hpz.js → 09--oejbzw3q-.js} +3 -3
  96. package/app/apps/web/.next/static/chunks/0l3ck.awv~4t7.js +1 -0
  97. package/app/apps/web/.next/static/chunks/{171za22fv684..js → 0lxuac2v0_gdl.js} +2 -2
  98. package/app/apps/web/.next/static/chunks/0n0n.0279ot6c.js +1 -0
  99. package/app/apps/web/.next/static/chunks/0qcu452dr~edz.js +14 -0
  100. package/app/apps/web/.next/static/chunks/0uev~g~qvbjv9.js +4 -0
  101. package/app/apps/web/components/previous-cycles-trend.tsx +26 -11
  102. package/app/apps/web/components/usage-chart.tsx +35 -37
  103. package/app/apps/web/components/usage-gauges.tsx +18 -12
  104. package/app/apps/web/components/usage-sidebar.tsx +23 -12
  105. package/app/apps/web/lib/changelog-data.generated.ts +1 -1
  106. package/app/apps/web/lib/utilization-tone.ts +74 -0
  107. package/app/apps/web/package.json +1 -1
  108. package/app/apps/web/tsconfig.tsbuildinfo +1 -1
  109. package/dist/daemon-worker.js +694 -67
  110. package/dist/index.js +1449 -823
  111. package/package.json +1 -1
  112. package/app/apps/web/.next/server/chunks/[externals]__0fpbr8-._.js +0 -3
  113. package/app/apps/web/.next/server/chunks/[root-of-the-server]__0-vgrh1._.js +0 -3
  114. package/app/apps/web/.next/server/chunks/[root-of-the-server]__0.z48ue._.js +0 -3
  115. package/app/apps/web/.next/server/chunks/[root-of-the-server]__0_8zh-i._.js +0 -9
  116. package/app/apps/web/.next/server/chunks/[root-of-the-server]__0dctov1._.js +0 -5
  117. package/app/apps/web/.next/server/chunks/[root-of-the-server]__0e8n_x4._.js +0 -3
  118. package/app/apps/web/.next/server/chunks/[root-of-the-server]__0ej_p3s._.js +0 -9
  119. package/app/apps/web/.next/server/chunks/[root-of-the-server]__0jprdks._.js +0 -9
  120. package/app/apps/web/.next/server/chunks/packages_09hmrqx._.js +0 -3
  121. package/app/apps/web/.next/server/chunks/packages_118y1lp._.js +0 -3
  122. package/app/apps/web/.next/server/chunks/ssr/[root-of-the-server]__0ytdqxt._.js +0 -3
  123. package/app/apps/web/.next/static/chunks/05m.oz3kmf1p7.js +0 -1
  124. package/app/apps/web/.next/static/chunks/07-fq4im3pmjp.js +0 -4
  125. package/app/apps/web/.next/static/chunks/0o9ayt8sknubd.js +0 -1
  126. package/app/apps/web/.next/static/chunks/0wfbj5zr~az.z.css +0 -1
  127. package/app/apps/web/.next/static/chunks/179_t_igg8ghh.js +0 -14
  128. /package/app/apps/web/.next/static/{tiK9aMHXkgnKLNmxj9J1P → L0Dy1hOQrZjV9l0TNulvk}/_buildManifest.js +0 -0
  129. /package/app/apps/web/.next/static/{tiK9aMHXkgnKLNmxj9J1P → L0Dy1hOQrZjV9l0TNulvk}/_clientMiddlewareManifest.js +0 -0
  130. /package/app/apps/web/.next/static/{tiK9aMHXkgnKLNmxj9J1P → L0Dy1hOQrZjV9l0TNulvk}/_ssgManifest.js +0 -0
@@ -0,0 +1,3 @@
1
+ module.exports=[18622,(e,t,s)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},56704,(e,t,s)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(e,t,s)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},24725,(e,t,s)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},93695,(e,t,s)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},70406,(e,t,s)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},50227,(e,t,s)=>{t.exports=e.x("node:path",()=>require("node:path"))},2157,(e,t,s)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},60526,(e,t,s)=>{t.exports=e.x("node:os",()=>require("node:os"))},66680,(e,t,s)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},74533,(e,t,s)=>{t.exports=e.x("node:child_process",()=>require("node:child_process"))},39587,e=>{"use strict";let t={kind:"claude-code",displayName:"Claude Code",shortLabel:"Claude",accentColor:"var(--af-accent)",iconChar:"✦"},s={kind:"codex",displayName:"Codex (OpenAI)",shortLabel:"Codex",accentColor:"rgb(16, 163, 127)",iconChar:"◆"},r={kind:"gemini",displayName:"Gemini CLI",shortLabel:"Gemini",accentColor:"rgb(124, 92, 246)",iconChar:"✺"},n=[t,s,r];n.map(e=>e.kind),e.s(["CLAUDE_CODE_METADATA",0,t,"CODEX_METADATA",0,s,"GEMINI_METADATA",0,r,"agentMetadata",0,n])},36521,e=>{"use strict";let t=[/<system_instruction\b[^>]*>[\s\S]*?<\/system_instruction>\s*/gi],s=["<command-name>","<local-command-stdout>","<local-command-caveat>","<task-notification>","Base directory for this skill:"];function r(e){if(!e)return e;let s=e;for(let e of t)s=s.replace(e,"");return s.trim()}e.s(["isFrameworkInjectedUserInput",0,function(e){if(!e)return!1;let t=r(e);if(!t)return!0;for(let e of s)if(t.startsWith(e))return!0;return!1},"stripFrameworkBoilerplate",0,r])},79357,e=>{"use strict";let t=["/.claude/worktrees/","/.worktrees/","/claude/worktrees/"],s=/\/conductor\/workspaces\/[^/]+\/([^/]+)(?:\/|$)/;e.s(["canonicalProjectName",0,function(e){let r=e.replace(/\/{2,}/g,"/"),n=function(e){for(let s of t){let t=e.lastIndexOf(s);if(t>=0)return{idx:t,marker:s}}return null}(r);if(n)return r.slice(0,n.idx);let o=function(e){let t=s.exec(e);if(!t)return null;let r=t[1],n=+!!t[0].endsWith("/");return{canonicalEndIdx:t.index+t[0].length-r.length-1-n,workspaceName:r}}(r);return o?r.slice(0,o.canonicalEndIdx):r},"computeBurstsFromSessions",0,function(e,t={}){let s=[];for(let t of e)t.activeSegments&&0!==t.activeSegments.length&&s.push({id:t.id,projectDir:t.projectDir,segments:t.activeSegments});return function(e,t){let s=t.minDurationMs??6e4,r=t.mergeGapMs??6e5,n=t.minActive??2,o=[];for(let t of e)for(let e of t.segments)e.endMs<=e.startMs||(o.push({ms:e.startMs,delta:1,sessionId:t.id}),o.push({ms:e.endMs,delta:-1,sessionId:t.id}));o.sort((e,t)=>e.ms-t.ms||t.delta-e.delta);let a=new Map,i=[],d=null;for(let e of o){if(1===e.delta)a.set(e.sessionId,(a.get(e.sessionId)??0)+1);else{let t=(a.get(e.sessionId)??0)-1;t<=0?a.delete(e.sessionId):a.set(e.sessionId,t)}let t=a.size;if(t>=n)if(d)for(let s of(d.endMs=e.ms,t>d.peak&&(d.peak=t),a.keys()))d.sessionIds.add(s);else d={startMs:e.ms,endMs:e.ms,peak:t,sessionIds:new Set(a.keys())};else d&&(d.endMs=e.ms,i.push(d),d=null)}d&&i.push(d);let l=i.filter(e=>e.endMs-e.startMs>=s),p=[];for(let e of l){let t=p[p.length-1];if(t&&e.startMs-t.endMs<=r)for(let s of(t.endMs=e.endMs,e.peak>t.peak&&(t.peak=e.peak),e.sessionIds))t.sessionIds.add(s);else p.push({startMs:e.startMs,endMs:e.endMs,peak:e.peak,sessionIds:new Set(e.sessionIds)})}let c=new Map;for(let t of e)c.set(t.id,t.projectDir);return p.map(e=>{let t=Array.from(new Set(Array.from(e.sessionIds).map(e=>c.get(e)).filter(e=>!!e)));return{startMs:e.startMs,endMs:e.endMs,peak:e.peak,sessionIds:Array.from(e.sessionIds),projectDirs:t,crossProject:t.length>1}})}(s,t)},"toLocalDay",0,function(e){let t=new Date(e),s=t.getFullYear(),r=String(t.getMonth()+1).padStart(2,"0"),n=String(t.getDate()).padStart(2,"0");return`${s}-${r}-${n}`}])},27174,e=>{"use strict";e.i(39587),e.s([])}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0nvdffv._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[93695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},18622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},56704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},70406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},50227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},2157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},60526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},66680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},39587,e=>{"use strict";let t={kind:"claude-code",displayName:"Claude Code",shortLabel:"Claude",accentColor:"var(--af-accent)",iconChar:"✦"},r={kind:"codex",displayName:"Codex (OpenAI)",shortLabel:"Codex",accentColor:"rgb(16, 163, 127)",iconChar:"◆"},n={kind:"gemini",displayName:"Gemini CLI",shortLabel:"Gemini",accentColor:"rgb(124, 92, 246)",iconChar:"✺"},a=[t,r,n];a.map(e=>e.kind),e.s(["CLAUDE_CODE_METADATA",0,t,"CODEX_METADATA",0,r,"GEMINI_METADATA",0,n,"agentMetadata",0,a])},79357,e=>{"use strict";let t=["/.claude/worktrees/","/.worktrees/","/claude/worktrees/"],r=/\/conductor\/workspaces\/[^/]+\/([^/]+)(?:\/|$)/;e.s(["canonicalProjectName",0,function(e){let n=e.replace(/\/{2,}/g,"/"),a=function(e){for(let r of t){let t=e.lastIndexOf(r);if(t>=0)return{idx:t,marker:r}}return null}(n);if(a)return n.slice(0,a.idx);let s=function(e){let t=r.exec(e);if(!t)return null;let n=t[1],a=+!!t[0].endsWith("/");return{canonicalEndIdx:t.index+t[0].length-n.length-1-a,workspaceName:n}}(n);return s?n.slice(0,s.canonicalEndIdx):n},"computeBurstsFromSessions",0,function(e,t={}){let r=[];for(let t of e)t.activeSegments&&0!==t.activeSegments.length&&r.push({id:t.id,projectDir:t.projectDir,segments:t.activeSegments});return function(e,t){let r=t.minDurationMs??6e4,n=t.mergeGapMs??6e5,a=t.minActive??2,s=[];for(let t of e)for(let e of t.segments)e.endMs<=e.startMs||(s.push({ms:e.startMs,delta:1,sessionId:t.id}),s.push({ms:e.endMs,delta:-1,sessionId:t.id}));s.sort((e,t)=>e.ms-t.ms||t.delta-e.delta);let i=new Map,o=[],l=null;for(let e of s){if(1===e.delta)i.set(e.sessionId,(i.get(e.sessionId)??0)+1);else{let t=(i.get(e.sessionId)??0)-1;t<=0?i.delete(e.sessionId):i.set(e.sessionId,t)}let t=i.size;if(t>=a)if(l)for(let r of(l.endMs=e.ms,t>l.peak&&(l.peak=t),i.keys()))l.sessionIds.add(r);else l={startMs:e.ms,endMs:e.ms,peak:t,sessionIds:new Set(i.keys())};else l&&(l.endMs=e.ms,o.push(l),l=null)}l&&o.push(l);let d=o.filter(e=>e.endMs-e.startMs>=r),u=[];for(let e of d){let t=u[u.length-1];if(t&&e.startMs-t.endMs<=n)for(let r of(t.endMs=e.endMs,e.peak>t.peak&&(t.peak=e.peak),e.sessionIds))t.sessionIds.add(r);else u.push({startMs:e.startMs,endMs:e.endMs,peak:e.peak,sessionIds:new Set(e.sessionIds)})}let c=new Map;for(let t of e)c.set(t.id,t.projectDir);return u.map(e=>{let t=Array.from(new Set(Array.from(e.sessionIds).map(e=>c.get(e)).filter(e=>!!e)));return{startMs:e.startMs,endMs:e.endMs,peak:e.peak,sessionIds:Array.from(e.sessionIds),projectDirs:t,crossProject:t.length>1}})}(r,t)},"toLocalDay",0,function(e){let t=new Date(e),r=t.getFullYear(),n=String(t.getMonth()+1).padStart(2,"0"),a=String(t.getDate()).padStart(2,"0");return`${r}-${n}-${a}`}])},36521,e=>{"use strict";let t=[/<system_instruction\b[^>]*>[\s\S]*?<\/system_instruction>\s*/gi],r=["<command-name>","<local-command-stdout>","<local-command-caveat>","<task-notification>","Base directory for this skill:"];function n(e){if(!e)return e;let r=e;for(let e of t)r=r.replace(e,"");return r.trim()}e.s(["isFrameworkInjectedUserInput",0,function(e){if(!e)return!1;let t=n(e);if(!t)return!0;for(let e of r)if(t.startsWith(e))return!0;return!1},"stripFrameworkBoilerplate",0,n])},27174,e=>{"use strict";e.i(39587),e.s([])},96735,e=>{"use strict";e.i(91530),e.s([],96735)},41332,e=>{"use strict";var t=e.i(47909),r=e.i(74017),n=e.i(96250),a=e.i(59756),s=e.i(61916),i=e.i(74677),o=e.i(69741),l=e.i(16795),d=e.i(87718),u=e.i(95169),c=e.i(47587),p=e.i(66012),h=e.i(70101),f=e.i(74838),g=e.i(10372),m=e.i(93695);e.i(52474);var x=e.i(220);e.i(27174);var w=e.i(30212),v=e.i(5737),R=e.i(76956);e.i(96735);var y=e.i(54853);function C(e){let t=e.getFullYear(),r=String(e.getMonth()+1).padStart(2,"0"),n=String(e.getDate()).padStart(2,"0");return`${t}-${r}-${n}`}async function k(e){let t=Math.min(26,Math.max(1,parseInt(new URL(e.url).searchParams.get("count")??"12",10))),r=new Set((0,R.listWeekDigestKeys)()),n=new Set;for(let e of(0,v.listEntryKeys)()){let t=(0,y.parseEntryKey)(e);t&&n.add(t.local_day)}let a=(0,w.calendarWeek)(),s=(0,w.priorCalendarWeek)(),i=[];for(let e=0;e<t;e++){let t,o,l;if(0===e)t=a.start,o=a.end,l=!0;else{let r=(e-1)*7;(t=new Date(s.start)).setDate(s.start.getDate()-r),(o=new Date(s.end)).setDate(s.end.getDate()-r),l=!1}let d=0,u=new Date(t);for(;u.getTime()<=o.getTime();)n.has(C(u))&&d++,u.setDate(u.getDate()+1);let c=C(t),p=r.has(c)?`week-${c}`:null,h=null,f=0,g=0;if(p){let e=(0,R.readWeekDigest)(c);e&&(h=e.headline,f=e.shipped.length,g=Math.round(e.agent_min_total))}i.push({iso_week:function(e){let t=new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate()));t.setUTCDate(t.getUTCDate()+4-(t.getUTCDay()||7));let r=new Date(Date.UTC(t.getUTCFullYear(),0,1));return Math.ceil(((t.getTime()-r.getTime())/864e5+1)/7)}(t),start:c,end:C(o),label:function(e,t){let r=e=>e.toLocaleDateString("en-US",{month:"short",day:"numeric"});return`${r(e)} – ${r(t)}`}(t,o),active_days:d,in_progress:l,saved_key:p,headline:h,shipped_count:f,agent_min:g})}return Response.json({weeks:i})}e.s(["GET",0,k,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],19809);var E=e.i(19809);let M=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/digest/week-index/route",pathname:"/api/digest/week-index",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/apps/web/app/api/digest/week-index/route.ts",nextConfigOutput:"standalone",userland:E,...{}}),{workAsyncStorage:D,workUnitAsyncStorage:A,serverHooks:I}=M;async function S(e,t,n){n.requestMeta&&(0,a.setRequestMeta)(e,n.requestMeta),M.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let w="/api/digest/week-index/route";w=w.replace(/\/index$/,"")||"/";let v=await M.prepare(e,t,{srcPage:w,multiZoneDraftMode:!1});if(!v)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:R,params:y,nextConfig:C,parsedUrl:k,isDraftMode:E,prerenderManifest:D,routerServerContext:A,isOnDemandRevalidate:I,revalidateOnlyGenerated:S,resolvedPathname:T,clientReferenceManifest:b,serverActionsManifest:_}=v,N=(0,o.normalizeAppPath)(w),q=!!(D.dynamicRoutes[N]||D.routes[T]),P=async()=>((null==A?void 0:A.render404)?await A.render404(e,t,k,!1):t.end("This page could not be found"),null);if(q&&!E){let e=!!D.routes[T],t=D.dynamicRoutes[N];if(t&&!1===t.fallback&&!e){if(C.adapterPath)return await P();throw new m.NoFallbackError}}let U=null;!q||M.isDev||E||(U="/index"===(U=T)?"/":U);let O=!0===M.isDev||!q,j=q&&!O;_&&b&&(0,i.setManifestsSingleton)({page:w,clientReferenceManifest:b,serverActionsManifest:_});let $=e.method||"GET",H=(0,s.getTracer)(),F=H.getActiveScopeSpan(),L=!!(null==A?void 0:A.isWrappedByNextServer),K=!!(0,a.getRequestMeta)(e,"minimalMode"),B=(0,a.getRequestMeta)(e,"incrementalCache")||await M.getIncrementalCache(e,C,D,K);null==B||B.resetRequestCache(),globalThis.__incrementalCache=B;let W={params:y,previewProps:D.preview,renderOpts:{experimental:{authInterrupts:!!C.experimental.authInterrupts},cacheComponents:!!C.cacheComponents,supportsDynamicResponse:O,incrementalCache:B,cacheLifeProfiles:C.cacheLife,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,a)=>M.onRequestError(e,t,n,a,A)},sharedContext:{buildId:R}},G=new l.NodeNextRequest(e),X=new l.NodeNextResponse(t),Y=d.NextRequestAdapter.fromNodeNextRequest(G,(0,d.signalFromNodeResponse)(t));try{let a,i=async e=>M.handle(Y,W).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=H.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==u.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route");if(n){let t=`${$} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t),a&&a!==e&&(a.setAttribute("http.route",n),a.updateName(t))}else e.updateName(`${$} ${w}`)}),o=async a=>{var s,o;let l=async({previousCacheEntry:r})=>{try{if(!K&&I&&S&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await i(a);e.fetchMetrics=W.renderOpts.fetchMetrics;let o=W.renderOpts.pendingWaitUntil;o&&n.waitUntil&&(n.waitUntil(o),o=void 0);let l=W.renderOpts.collectedTags;if(!q)return await (0,p.sendResponse)(G,X,s,W.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(s.headers);l&&(t[g.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==W.renderOpts.collectedRevalidate&&!(W.renderOpts.collectedRevalidate>=g.INFINITE_CACHE)&&W.renderOpts.collectedRevalidate,n=void 0===W.renderOpts.collectedExpire||W.renderOpts.collectedExpire>=g.INFINITE_CACHE?void 0:W.renderOpts.collectedExpire;return{value:{kind:x.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==r?void 0:r.isStale)&&await M.onRequestError(e,t,{routerKind:"App Router",routePath:w,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:j,isOnDemandRevalidate:I})},!1,A),t}},d=await M.handleResponse({req:e,nextConfig:C,cacheKey:U,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:D,isRoutePPREnabled:!1,isOnDemandRevalidate:I,revalidateOnlyGenerated:S,responseGenerator:l,waitUntil:n.waitUntil,isMinimalMode:K});if(!q)return null;if((null==d||null==(s=d.value)?void 0:s.kind)!==x.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(o=d.value)?void 0:o.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});K||t.setHeader("x-nextjs-cache",I?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),E&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let u=(0,h.fromNodeOutgoingHttpHeaders)(d.value.headers);return K&&q||u.delete(g.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||u.get("Cache-Control")||u.set("Cache-Control",(0,f.getCacheControlHeader)(d.cacheControl)),await (0,p.sendResponse)(G,X,new Response(d.value.body,{headers:u,status:d.value.status||200})),null};L&&F?await o(F):(a=H.getActiveScopeSpan(),await H.withPropagatedContext(e.headers,()=>H.trace(u.BaseServerSpan.handleRequest,{spanName:`${$} ${w}`,kind:s.SpanKind.SERVER,attributes:{"http.method":$,"http.target":e.url}},o),void 0,!L))}catch(t){if(t instanceof m.NoFallbackError||await M.onRequestError(e,t,{routerKind:"App Router",routePath:N,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:j,isOnDemandRevalidate:I})},!1,A),q)throw t;return await (0,p.sendResponse)(G,X,new Response(null,{status:500})),null}}e.s(["handler",0,S,"patchFetch",0,function(){return(0,n.patchFetch)({workAsyncStorage:D,workUnitAsyncStorage:A})},"routeModule",0,M,"serverHooks",0,I,"workAsyncStorage",0,D,"workUnitAsyncStorage",0,A],41332)}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0s2~c3g._.js.map
@@ -1,4 +1,4 @@
1
- module.exports=[62952,e=>{"use strict";var t=e.i(47909),n=e.i(74017),s=e.i(96250),r=e.i(59756),o=e.i(61916),a=e.i(74677),i=e.i(69741),l=e.i(16795),u=e.i(87718),d=e.i(95169),c=e.i(47587),p=e.i(66012),f=e.i(70101),h=e.i(74838),m=e.i(10372),g=e.i(93695);e.i(52474);var v=e.i(220);e.i(43427);var k=e.i(20629);e.i(27174);let y=/\[request interrupted|interrupted by user/i,w=/rate.?limit|overloaded_error|api error|Error sending message/i,R=/^Base directory for this skill:/,M=/<command-name>(\/[^<\s]+)<\/command-name>(?:[\s\S]*?<command-args>([\s\S]*?)<\/command-args>)?/,$=/<task-notification>/;function x(e){for(let t of e)if(t?.type==="text")return t.text}function O(e){return e<1e3?String(e):e<1e4?(e/1e3).toFixed(1)+"k":e<1e6?Math.round(e/1e3)+"k":e<1e7?(e/1e6).toFixed(2)+"M":(e/1e6).toFixed(1)+"M"}function E(e){if(void 0===e||e<0)return"—";let t=Math.floor(e/1e3),n=Math.floor(t/3600),s=String(Math.floor(t%3600/60)).padStart(2,"0"),r=String(t%60).padStart(2,"0");return`${n}:${s}:${r}`}function C(e){if(void 0===e)return"—";if(e<1e3)return`${e}ms`;let t=Math.round(e/1e3);if(t<60)return`${t}s`;let n=Math.floor(t/60),s=t%60;if(n<60)return s?`${n}m ${s}s`:`${n}m`;let r=Math.floor(n/60),o=n%60;return o?`${r}h ${o}m`:`${r}h`}function b(e,t){if(!e)return"";let n=e.replace(/\s+/g," ").trim();return n.length>t?n.slice(0,t-1)+"…":n}var S=e.i(74533);let A=`You are a session analyst for Claude Code transcripts. The user is viewing a session in the fleetlens dashboard and wants your help understanding it.
1
+ module.exports=[62952,e=>{"use strict";var t=e.i(47909),n=e.i(74017),s=e.i(96250),r=e.i(59756),o=e.i(61916),a=e.i(74677),i=e.i(69741),l=e.i(16795),u=e.i(87718),d=e.i(95169),c=e.i(47587),p=e.i(66012),f=e.i(70101),h=e.i(74838),m=e.i(10372),g=e.i(93695);e.i(52474);var v=e.i(220);e.i(43427);var k=e.i(20629);e.i(27174);var y=e.i(36521);let w=/\[request interrupted|interrupted by user/i,R=/rate.?limit|overloaded_error|api error|Error sending message/i,M=/<command-name>(\/[^<\s]+)<\/command-name>(?:[\s\S]*?<command-args>([\s\S]*?)<\/command-args>)?/,$=/<task-notification>/;function x(e){for(let t of e)if(t?.type==="text")return t.text}function O(e){return e<1e3?String(e):e<1e4?(e/1e3).toFixed(1)+"k":e<1e6?Math.round(e/1e3)+"k":e<1e7?(e/1e6).toFixed(2)+"M":(e/1e6).toFixed(1)+"M"}function E(e){if(void 0===e||e<0)return"—";let t=Math.floor(e/1e3),n=Math.floor(t/3600),s=String(Math.floor(t%3600/60)).padStart(2,"0"),r=String(t%60).padStart(2,"0");return`${n}:${s}:${r}`}function C(e){if(void 0===e)return"—";if(e<1e3)return`${e}ms`;let t=Math.round(e/1e3);if(t<60)return`${t}s`;let n=Math.floor(t/60),s=t%60;if(n<60)return s?`${n}m ${s}s`:`${n}m`;let r=Math.floor(n/60),o=n%60;return o?`${r}h ${o}m`:`${r}h`}function b(e,t){if(!e)return"";let n=e.replace(/\s+/g," ").trim();return n.length>t?n.slice(0,t-1)+"…":n}var S=e.i(74533);let A=`You are a session analyst for Claude Code transcripts. The user is viewing a session in the fleetlens dashboard and wants your help understanding it.
2
2
 
3
3
  You will receive a structured summary of the session, then the user's question about it. Respond directly and concisely in markdown.
4
4
 
@@ -8,7 +8,7 @@ Some common tasks users ask about:
8
8
  - **Trace conversation flow**: Follow the logic and key decision points
9
9
  - **Suggest improvements**: Recommend better prompting, tool usage, or workflow patterns
10
10
 
11
- Be specific — cite timestamps, tool names, and event counts from the session data. Avoid generic advice. If the session data doesn't contain enough information to answer confidently, say so.`;async function T(e){let t;try{t=await e.json()}catch{return Response.json({error:"invalid JSON"},{status:400})}let{sessionId:n,question:s,model:r="haiku"}=t;if(!n||!s)return Response.json({error:"sessionId and question are required"},{status:400});let o=await (0,k.getSession)(n);if(!o)return Response.json({error:"session not found"},{status:404});let a=function(e){let t,n=function(e){let t=new Map;for(let n of e){if(!n.messageId)continue;let e=t.get(n.messageId)??[];e.push(n),t.set(n.messageId,e)}let n=e.filter(e=>{if("system"===e.role||"meta"===e.role||"tool-result"===e.role||"agent-thinking"===e.role)return!1;if("user"===e.role){let t=x(e.blocks)??"";if(R.test(t))return!1}return!0}),s=[];for(let e=0;e<n.length;e++){let r=n[e];if("tool-call"===r.role){let t=e;for(;e+1<n.length&&"tool-call"===n[e+1].role;)e++;let r=n.slice(t,e+1),o=[],a=new Map;for(let e of r){let t=e.toolName??"tool";a.has(t)||o.push(t),a.set(t,(a.get(t)??0)+1)}let i=o.map(e=>({name:e,count:a.get(e)??1}));s.push({kind:"tool-group",toolNames:i,count:r.length,events:r,tOffsetMs:r[0].tOffsetMs,gapMs:r[0].gapMs});continue}if("user"===r.role){let e=x(r.blocks)??"",t=function(e){if(!$.test(e))return null;let t=t=>{let n=e.match(RegExp(`<${t}>([\\s\\S]*?)<\\/${t}>`));return n?n[1].trim():void 0},n=(t("status")??"").toLowerCase(),s="unknown";return"success"===n||"ok"===n||"done"===n||"completed"===n?s="success":"failed"===n||"error"===n||"fail"===n?s="failed":("running"===n||"in_progress"===n)&&(s="running"),{status:s,summary:t("summary")??"Background task notification",taskId:t("task-id"),toolUseId:t("tool-use-id"),outputFile:t("output-file")}}(e);if(t){s.push({kind:"task-notification",event:r,status:t.status,summary:t.summary,taskId:t.taskId,toolUseId:t.toolUseId,outputFile:t.outputFile,tOffsetMs:r.tOffsetMs,gapMs:r.gapMs});continue}if(y.test(e)){s.push({kind:"interrupt",event:r,tOffsetMs:r.tOffsetMs,gapMs:r.gapMs});continue}let n=e.match(M);if(n){let e=n[1],t=(n[2]??"").trim(),o=t?`${e} ${t}`:e;s.push({kind:"user",event:r,displayPreview:o,displayBlocks:[{type:"text",text:o}],tOffsetMs:r.tOffsetMs,gapMs:r.gapMs});continue}s.push({kind:"user",event:r,tOffsetMs:r.tOffsetMs,gapMs:r.gapMs});continue}if("agent"===r.role){let e=x(r.blocks)??"";if(function(e){if(!e.usage)return!1;let t=e.usage;return 0===t.input&&0===t.output&&0===t.cacheRead&&0===t.cacheWrite}(r)){s.push({kind:"model",event:r,tOffsetMs:r.tOffsetMs,gapMs:r.gapMs}),w.test(e)&&e.length<500&&s.push({kind:"error",event:r,message:e,tOffsetMs:r.tOffsetMs,gapMs:0});continue}if(w.test(e)&&e.length<500){s.push({kind:"error",event:r,message:e,tOffsetMs:r.tOffsetMs,gapMs:r.gapMs});continue}let n=r.messageId?t.get(r.messageId)??[r]:[r];s.push({kind:"agent",event:r,groupedEvents:n,tOffsetMs:r.tOffsetMs,gapMs:r.gapMs});continue}}return s}(e.events),s=function(e){let t=[],n=[],s=()=>{let e,s;if(0===n.length)return;let r=0,o=0,a=0,i=new Map,l=new Set,u={input:0,output:0,cacheRead:0,cacheWrite:0};for(let t=0;t<n.length;t++){let s=n[t];if("agent"===s.kind){r++,void 0===e&&(e=t);let n=s.event.messageId,o=s.event.usage;n&&!l.has(n)&&o&&(l.add(n),u.input+=o.input,u.output+=o.output,u.cacheRead+=o.cacheRead,u.cacheWrite+=o.cacheWrite)}else if("tool-group"===s.kind)for(let e of(o+=s.count,s.toolNames))i.set(e.name,(i.get(e.name)??0)+e.count);else"error"===s.kind&&a++}for(let e=n.length-1;e>=0;e--){if("agent"!==n[e].kind)continue;let t=n[e-1];if(t?.kind!=="task-notification"){s=e;break}}if(void 0===s){for(let e=n.length-1;e>=0;e--)if("agent"===n[e].kind){s=e;break}}let d=void 0!==e&&"agent"===n[e].kind?n[e].event.preview:void 0,c=void 0!==s&&"agent"===n[s].kind?n[s].event.preview:void 0,p=Array.from(i.entries()).sort((e,t)=>t[1]-e[1]).map(([e,t])=>({name:e,count:t})),f=n[0],h=n[n.length-1],m=f.tOffsetMs,g=h.tOffsetMs;t.push({kind:"turn",rows:n,firstPrimaryIndex:"tool-group"===f.kind?f.events[0].index:f.event.index,tOffsetMs:m,durationMs:void 0!==m&&void 0!==g?g-m:void 0,summary:{agentMessages:r,toolCalls:o,errors:a,firstAgentPreview:d,finalAgentPreview:c,firstAgentIndex:e,finalAgentIndex:s,toolNames:p,totalTokens:u}}),n=[]};for(let r of e)"user"===r.kind||"interrupt"===r.kind?(s(),t.push(r)):n.push(r);return s(),t}(n),r=e.totalUsage.input+e.totalUsage.cacheRead+e.totalUsage.cacheWrite,o=e.totalUsage.cacheRead+e.totalUsage.cacheWrite,a=new Map;for(let e of n)if("tool-group"===e.kind)for(let t of e.toolNames)a.set(t.name,(a.get(t.name)??0)+t.count);let i=Array.from(a.entries()).sort((e,t)=>t[1]-e[1]).slice(0,8).map(([e,t])=>`${e}\xd7${t}`).join(", "),l=n.find(e=>"user"===e.kind&&!e.event.preview.startsWith("<command-name>")&&!e.event.preview.startsWith("Base directory for this skill:")),u=l?.kind==="user"?l.displayBlocks?.[0]?.type==="text"?l.displayBlocks[0].text:(t=l.event.blocks.find(e=>e?.type==="text"),t?.text??l.event.preview):"",d=n.filter(e=>"error"===e.kind),c=d.length>0?`${d.length} errors, first: "${b(d[0].message,160)}"`:"none",p=[],f=e.durationMs??0;for(let t of e.events){if("tool-call"!==t.role||"Bash"!==t.toolName)continue;let e=t.blocks.find(e=>e&&"tool_use"===e.type),n="string"==typeof e?.input?.command?e.input.command:"";if(!/gh\s+pr\s+create\b/i.test(n))continue;let s=n.match(/--title\s+["']([^"']+)["']/),r=s?.[1]??n.replace(/^gh pr create /,"").slice(0,120),o=f>0&&void 0!==t.tOffsetMs?Math.round(t.tOffsetMs/f*100):0;p.push({offsetPct:o,titleOrCmd:r})}let h="";for(let e=s.length-1;e>=0;e--){let t=s[e];if("turn"!==t.kind)continue;let n=t.summary.finalAgentIndex;if(void 0!==n){let e=t.rows[n];if(e?.kind==="agent"){let t=e.event.blocks.find(e=>e&&"text"===e.type);h=t?.text??e.event.preview;break}}}let m=[];for(let e of s){if(m.length>=40){m.push({offset:"...",line:`(+${s.length-m.length} more rows)`});break}if("user"===e.kind){let t=b(function(e){switch(e.kind){case"user":return e.displayPreview??e.event.preview;case"agent":return e.event.preview;case"tool-group":return e.toolNames.slice(0,4).map(e=>e.count>1?`${e.name} \xd7${e.count}`:e.name).join(", ");case"interrupt":return"[interrupted]";case"model":return"[zero-usage response]";case"error":return`ERROR: ${e.message}`;case"task-notification":return`BG task ${e.status}: ${e.summary}`;default:return""}}(e),180);t.startsWith("<command-name>")||m.push({offset:E(e.tOffsetMs),line:`USER: ${t}`})}else if("turn"===e.kind){let t=e.summary,n=t.firstAgentPreview?b(t.firstAgentPreview,180):"",s=t.finalAgentPreview?b(t.finalAgentPreview,180):"",r=n&&s&&n===s,o=t.toolNames.slice(0,3).map(e=>e.count>1?`${e.name}\xd7${e.count}`:e.name).join(", "),a=`${t.agentMessages} msg, ${t.toolCalls} tools${t.errors>0?`, ${t.errors} err`:""}`,i=r||!s?n:`${n} → ${s}`;m.push({offset:E(e.tOffsetMs),line:`TURN (${a}${o?`, ${o}`:""}): ${i}`})}else"interrupt"===e.kind&&m.push({offset:E(e.tOffsetMs),line:"INTERRUPT"})}let g=[];for(let t of(g.push(`# Session ${e.id}`),g.push(`project: ${e.projectName}`),e.model&&g.push(`model: ${e.model}`),g.push(`duration: ${C(e.durationMs)} | active: ${C(e.airTimeMs??e.durationMs)}`),g.push(`events: ${e.eventCount} | tokens: ${O(r)} in / ${O(e.totalUsage.output)} out${o>0?` (+${O(o)} cached)`:""}`),g.push(`tool calls: ${e.toolCallCount??0}${i?` (${i})`:""}`),g.push(`turns: ${e.turnCount??0}`),e.firstTimestamp&&g.push(`started: ${e.firstTimestamp}`),g.push(""),u&&(g.push("## First user message"),g.push(b(u,1200)),g.push("")),g.push("## Timeline"),m))g.push(`[${t.offset}] ${t.line}`);if(g.push(""),p.length>0){for(let e of(g.push("## PRs shipped"),p))g.push(`- at ${e.offsetPct}% into session: ${b(e.titleOrCmd,160)}`);g.push("")}return g.push("## Errors encountered"),g.push(c),g.push(""),h&&(g.push("## Final agent message"),g.push(b(h,800))),g.join("\n")}(o),i=`Here is the session transcript summary:
11
+ Be specific — cite timestamps, tool names, and event counts from the session data. Avoid generic advice. If the session data doesn't contain enough information to answer confidently, say so.`;async function T(e){let t;try{t=await e.json()}catch{return Response.json({error:"invalid JSON"},{status:400})}let{sessionId:n,question:s,model:r="haiku"}=t;if(!n||!s)return Response.json({error:"sessionId and question are required"},{status:400});let o=await (0,k.getSession)(n);if(!o)return Response.json({error:"session not found"},{status:404});let a=function(e){let t,n=function(e){let t=new Map;for(let n of e){if(!n.messageId)continue;let e=t.get(n.messageId)??[];e.push(n),t.set(n.messageId,e)}let n=e.filter(e=>{if("system"===e.role||"meta"===e.role||"tool-result"===e.role||"agent-thinking"===e.role)return!1;if("user"===e.role){let t=x(e.blocks)??"";if(0===e.blocks.length||!t.trim())return!1;if(M.test(t)||$.test(t))return!0;if((0,y.isFrameworkInjectedUserInput)(t))return!1}return!0}),s=[];for(let e=0;e<n.length;e++){let r=n[e];if("tool-call"===r.role){let t=e;for(;e+1<n.length&&"tool-call"===n[e+1].role;)e++;let r=n.slice(t,e+1),o=[],a=new Map;for(let e of r){let t=e.toolName??"tool";a.has(t)||o.push(t),a.set(t,(a.get(t)??0)+1)}let i=o.map(e=>({name:e,count:a.get(e)??1}));s.push({kind:"tool-group",toolNames:i,count:r.length,events:r,tOffsetMs:r[0].tOffsetMs,gapMs:r[0].gapMs});continue}if("user"===r.role){let e=x(r.blocks)??"",t=function(e){if(!$.test(e))return null;let t=t=>{let n=e.match(RegExp(`<${t}>([\\s\\S]*?)<\\/${t}>`));return n?n[1].trim():void 0},n=(t("status")??"").toLowerCase(),s="unknown";return"success"===n||"ok"===n||"done"===n||"completed"===n?s="success":"failed"===n||"error"===n||"fail"===n?s="failed":("running"===n||"in_progress"===n)&&(s="running"),{status:s,summary:t("summary")??"Background task notification",taskId:t("task-id"),toolUseId:t("tool-use-id"),outputFile:t("output-file")}}(e);if(t){s.push({kind:"task-notification",event:r,status:t.status,summary:t.summary,taskId:t.taskId,toolUseId:t.toolUseId,outputFile:t.outputFile,tOffsetMs:r.tOffsetMs,gapMs:r.gapMs});continue}if(w.test(e)){s.push({kind:"interrupt",event:r,tOffsetMs:r.tOffsetMs,gapMs:r.gapMs});continue}let n=e.match(M);if(n){let e=n[1],t=(n[2]??"").trim(),o=t?`${e} ${t}`:e;s.push({kind:"user",event:r,displayPreview:o,displayBlocks:[{type:"text",text:o}],tOffsetMs:r.tOffsetMs,gapMs:r.gapMs});continue}s.push({kind:"user",event:r,tOffsetMs:r.tOffsetMs,gapMs:r.gapMs});continue}if("agent"===r.role){let e=x(r.blocks)??"";if(function(e){if(!e.usage)return!1;let t=e.usage;return 0===t.input&&0===t.output&&0===t.cacheRead&&0===t.cacheWrite}(r)){s.push({kind:"model",event:r,tOffsetMs:r.tOffsetMs,gapMs:r.gapMs}),R.test(e)&&e.length<500&&s.push({kind:"error",event:r,message:e,tOffsetMs:r.tOffsetMs,gapMs:0});continue}if(R.test(e)&&e.length<500){s.push({kind:"error",event:r,message:e,tOffsetMs:r.tOffsetMs,gapMs:r.gapMs});continue}let n=r.messageId?t.get(r.messageId)??[r]:[r];s.push({kind:"agent",event:r,groupedEvents:n,tOffsetMs:r.tOffsetMs,gapMs:r.gapMs});continue}}return s}(e.events),s=function(e){let t=[],n=[],s=()=>{let e,s;if(0===n.length)return;let r=0,o=0,a=0,i=new Map,l=new Set,u={input:0,output:0,cacheRead:0,cacheWrite:0};for(let t=0;t<n.length;t++){let s=n[t];if("agent"===s.kind){r++,void 0===e&&(e=t);let n=s.event.messageId,o=s.event.usage;n&&!l.has(n)&&o&&(l.add(n),u.input+=o.input,u.output+=o.output,u.cacheRead+=o.cacheRead,u.cacheWrite+=o.cacheWrite)}else if("tool-group"===s.kind)for(let e of(o+=s.count,s.toolNames))i.set(e.name,(i.get(e.name)??0)+e.count);else"error"===s.kind&&a++}for(let e=n.length-1;e>=0;e--){if("agent"!==n[e].kind)continue;let t=n[e-1];if(t?.kind!=="task-notification"){s=e;break}}if(void 0===s){for(let e=n.length-1;e>=0;e--)if("agent"===n[e].kind){s=e;break}}let d=void 0!==e&&"agent"===n[e].kind?n[e].event.preview:void 0,c=void 0!==s&&"agent"===n[s].kind?n[s].event.preview:void 0,p=Array.from(i.entries()).sort((e,t)=>t[1]-e[1]).map(([e,t])=>({name:e,count:t})),f=n[0],h=n[n.length-1],m=f.tOffsetMs,g=h.tOffsetMs;t.push({kind:"turn",rows:n,firstPrimaryIndex:"tool-group"===f.kind?f.events[0].index:f.event.index,tOffsetMs:m,durationMs:void 0!==m&&void 0!==g?g-m:void 0,summary:{agentMessages:r,toolCalls:o,errors:a,firstAgentPreview:d,finalAgentPreview:c,firstAgentIndex:e,finalAgentIndex:s,toolNames:p,totalTokens:u}}),n=[]};for(let r of e)"user"===r.kind||"interrupt"===r.kind?(s(),t.push(r)):n.push(r);return s(),t}(n),r=e.totalUsage.input+e.totalUsage.cacheRead+e.totalUsage.cacheWrite,o=e.totalUsage.cacheRead+e.totalUsage.cacheWrite,a=new Map;for(let e of n)if("tool-group"===e.kind)for(let t of e.toolNames)a.set(t.name,(a.get(t.name)??0)+t.count);let i=Array.from(a.entries()).sort((e,t)=>t[1]-e[1]).slice(0,8).map(([e,t])=>`${e}\xd7${t}`).join(", "),l=n.find(e=>"user"===e.kind&&!e.event.preview.startsWith("<command-name>")&&!e.event.preview.startsWith("Base directory for this skill:")),u=l?.kind==="user"?l.displayBlocks?.[0]?.type==="text"?l.displayBlocks[0].text:(t=l.event.blocks.find(e=>e?.type==="text"),t?.text??l.event.preview):"",d=n.filter(e=>"error"===e.kind),c=d.length>0?`${d.length} errors, first: "${b(d[0].message,160)}"`:"none",p=[],f=e.durationMs??0;for(let t of e.events){if("tool-call"!==t.role||"Bash"!==t.toolName)continue;let e=t.blocks.find(e=>e&&"tool_use"===e.type),n="string"==typeof e?.input?.command?e.input.command:"";if(!/gh\s+pr\s+create\b/i.test(n))continue;let s=n.match(/--title\s+["']([^"']+)["']/),r=s?.[1]??n.replace(/^gh pr create /,"").slice(0,120),o=f>0&&void 0!==t.tOffsetMs?Math.round(t.tOffsetMs/f*100):0;p.push({offsetPct:o,titleOrCmd:r})}let h="";for(let e=s.length-1;e>=0;e--){let t=s[e];if("turn"!==t.kind)continue;let n=t.summary.finalAgentIndex;if(void 0!==n){let e=t.rows[n];if(e?.kind==="agent"){let t=e.event.blocks.find(e=>e&&"text"===e.type);h=t?.text??e.event.preview;break}}}let m=[];for(let e of s){if(m.length>=40){m.push({offset:"...",line:`(+${s.length-m.length} more rows)`});break}if("user"===e.kind){let t=b(function(e){switch(e.kind){case"user":return e.displayPreview??e.event.preview;case"agent":return e.event.preview;case"tool-group":return e.toolNames.slice(0,4).map(e=>e.count>1?`${e.name} \xd7${e.count}`:e.name).join(", ");case"interrupt":return"[interrupted]";case"model":return"[zero-usage response]";case"error":return`ERROR: ${e.message}`;case"task-notification":return`BG task ${e.status}: ${e.summary}`;default:return""}}(e),180);t.startsWith("<command-name>")||m.push({offset:E(e.tOffsetMs),line:`USER: ${t}`})}else if("turn"===e.kind){let t=e.summary,n=t.firstAgentPreview?b(t.firstAgentPreview,180):"",s=t.finalAgentPreview?b(t.finalAgentPreview,180):"",r=n&&s&&n===s,o=t.toolNames.slice(0,3).map(e=>e.count>1?`${e.name}\xd7${e.count}`:e.name).join(", "),a=`${t.agentMessages} msg, ${t.toolCalls} tools${t.errors>0?`, ${t.errors} err`:""}`,i=r||!s?n:`${n} → ${s}`;m.push({offset:E(e.tOffsetMs),line:`TURN (${a}${o?`, ${o}`:""}): ${i}`})}else"interrupt"===e.kind&&m.push({offset:E(e.tOffsetMs),line:"INTERRUPT"})}let g=[];for(let t of(g.push(`# Session ${e.id}`),g.push(`project: ${e.projectName}`),e.model&&g.push(`model: ${e.model}`),g.push(`duration: ${C(e.durationMs)} | active: ${C(e.airTimeMs??e.durationMs)}`),g.push(`events: ${e.eventCount} | tokens: ${O(r)} in / ${O(e.totalUsage.output)} out${o>0?` (+${O(o)} cached)`:""}`),g.push(`tool calls: ${e.toolCallCount??0}${i?` (${i})`:""}`),g.push(`turns: ${e.turnCount??0}`),e.firstTimestamp&&g.push(`started: ${e.firstTimestamp}`),g.push(""),u&&(g.push("## First user message"),g.push(b(u,1200)),g.push("")),g.push("## Timeline"),m))g.push(`[${t.offset}] ${t.line}`);if(g.push(""),p.length>0){for(let e of(g.push("## PRs shipped"),p))g.push(`- at ${e.offsetPct}% into session: ${b(e.titleOrCmd,160)}`);g.push("")}return g.push("## Errors encountered"),g.push(c),g.push(""),h&&(g.push("## Final agent message"),g.push(b(h,800))),g.join("\n")}(o),i=`Here is the session transcript summary:
12
12
 
13
13
  ${a}
14
14
 
@@ -16,6 +16,6 @@ ${a}
16
16
 
17
17
  User's question: ${s}`,l=new TextEncoder;return new Response(new ReadableStream({start(t){let n=!1;function s(e){if(!n)try{t.enqueue(l.encode(`data: ${JSON.stringify(e)}
18
18
 
19
- `))}catch{n=!0}}let o=(0,S.spawn)("claude",["-p","--output-format","stream-json","--verbose","--model",r,"--tools","","--disable-slash-commands","--no-session-persistence","--setting-sources","","--append-system-prompt",A],{stdio:["pipe","pipe","pipe"],env:{...process.env}});o.stdin.write(i),o.stdin.end();let a="";o.stdout.on("data",e=>{for(let t of e.toString("utf8").split("\n")){let e=t.trim();if(e)try{let t=JSON.parse(e);if("assistant"===t.type){let e=t.message,n=e?.content;if(Array.isArray(n))for(let e of n)"text"===e.type&&"string"==typeof e.text&&s({type:"delta",text:e.text})}if("result"===t.type){let e=t.usage,n="number"==typeof e?.input_tokens&&"number"==typeof e?.output_tokens?e.input_tokens+e.output_tokens:void 0;s({type:"done",totalTokens:n??void 0})}}catch{}}}),o.stderr.on("data",e=>{a+=e.toString("utf8")}),o.on("close",e=>{if(0===e||n||s({type:"error",message:a.trim().slice(0,300)||`claude exited with code ${e}`}),!n){try{t.close()}catch{}n=!0}}),o.on("error",e=>{if(!n){s({type:"error",message:`Failed to spawn claude: ${e.message}`});try{t.close()}catch{}n=!0}}),e.signal.addEventListener("abort",()=>{try{o.kill("SIGTERM")}catch{}if(!n){try{t.close()}catch{}n=!0}})}}),{headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache, no-transform",Connection:"keep-alive","X-Accel-Buffering":"no"}})}e.s(["POST",0,T,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],10796);var N=e.i(10796);let I=new t.AppRouteRouteModule({definition:{kind:n.RouteKind.APP_ROUTE,page:"/api/ask/route",pathname:"/api/ask",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/apps/web/app/api/ask/route.ts",nextConfigOutput:"standalone",userland:N,...{}}),{workAsyncStorage:P,workUnitAsyncStorage:U,serverHooks:_}=I;async function q(e,t,s){s.requestMeta&&(0,r.setRequestMeta)(e,s.requestMeta),I.isDev&&(0,r.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let k="/api/ask/route";k=k.replace(/\/index$/,"")||"/";let y=await I.prepare(e,t,{srcPage:k,multiZoneDraftMode:!1});if(!y)return t.statusCode=400,t.end("Bad Request"),null==s.waitUntil||s.waitUntil.call(s,Promise.resolve()),null;let{buildId:w,params:R,nextConfig:M,parsedUrl:$,isDraftMode:x,prerenderManifest:O,routerServerContext:E,isOnDemandRevalidate:C,revalidateOnlyGenerated:b,resolvedPathname:S,clientReferenceManifest:A,serverActionsManifest:T}=y,N=(0,i.normalizeAppPath)(k),P=!!(O.dynamicRoutes[N]||O.routes[S]),U=async()=>((null==E?void 0:E.render404)?await E.render404(e,t,$,!1):t.end("This page could not be found"),null);if(P&&!x){let e=!!O.routes[S],t=O.dynamicRoutes[N];if(t&&!1===t.fallback&&!e){if(M.adapterPath)return await U();throw new g.NoFallbackError}}let _=null;!P||I.isDev||x||(_="/index"===(_=S)?"/":_);let q=!0===I.isDev||!P,j=P&&!q;T&&A&&(0,a.setManifestsSingleton)({page:k,clientReferenceManifest:A,serverActionsManifest:T});let F=e.method||"GET",H=(0,o.getTracer)(),B=H.getActiveScopeSpan(),D=!!(null==E?void 0:E.isWrappedByNextServer),W=!!(0,r.getRequestMeta)(e,"minimalMode"),K=(0,r.getRequestMeta)(e,"incrementalCache")||await I.getIncrementalCache(e,M,O,W);null==K||K.resetRequestCache(),globalThis.__incrementalCache=K;let L={params:R,previewProps:O.preview,renderOpts:{experimental:{authInterrupts:!!M.experimental.authInterrupts},cacheComponents:!!M.cacheComponents,supportsDynamicResponse:q,incrementalCache:K,cacheLifeProfiles:M.cacheLife,waitUntil:s.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,n,s,r)=>I.onRequestError(e,t,s,r,E)},sharedContext:{buildId:w}},G=new l.NodeNextRequest(e),X=new l.NodeNextResponse(t),z=u.NextRequestAdapter.fromNodeNextRequest(G,(0,u.signalFromNodeResponse)(t));try{let r,a=async e=>I.handle(z,L).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let n=H.getRootSpanAttributes();if(!n)return;if(n.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${n.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let s=n.get("next.route");if(s){let t=`${F} ${s}`;e.setAttributes({"next.route":s,"http.route":s,"next.span_name":t}),e.updateName(t),r&&r!==e&&(r.setAttribute("http.route",s),r.updateName(t))}else e.updateName(`${F} ${k}`)}),i=async r=>{var o,i;let l=async({previousCacheEntry:n})=>{try{if(!W&&C&&b&&!n)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let o=await a(r);e.fetchMetrics=L.renderOpts.fetchMetrics;let i=L.renderOpts.pendingWaitUntil;i&&s.waitUntil&&(s.waitUntil(i),i=void 0);let l=L.renderOpts.collectedTags;if(!P)return await (0,p.sendResponse)(G,X,o,L.renderOpts.pendingWaitUntil),null;{let e=await o.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(o.headers);l&&(t[m.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let n=void 0!==L.renderOpts.collectedRevalidate&&!(L.renderOpts.collectedRevalidate>=m.INFINITE_CACHE)&&L.renderOpts.collectedRevalidate,s=void 0===L.renderOpts.collectedExpire||L.renderOpts.collectedExpire>=m.INFINITE_CACHE?void 0:L.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:o.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:n,expire:s}}}}catch(t){throw(null==n?void 0:n.isStale)&&await I.onRequestError(e,t,{routerKind:"App Router",routePath:k,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:j,isOnDemandRevalidate:C})},!1,E),t}},u=await I.handleResponse({req:e,nextConfig:M,cacheKey:_,routeKind:n.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:O,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:b,responseGenerator:l,waitUntil:s.waitUntil,isMinimalMode:W});if(!P)return null;if((null==u||null==(o=u.value)?void 0:o.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==u||null==(i=u.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});W||t.setHeader("x-nextjs-cache",C?"REVALIDATED":u.isMiss?"MISS":u.isStale?"STALE":"HIT"),x&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let d=(0,f.fromNodeOutgoingHttpHeaders)(u.value.headers);return W&&P||d.delete(m.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||d.get("Cache-Control")||d.set("Cache-Control",(0,h.getCacheControlHeader)(u.cacheControl)),await (0,p.sendResponse)(G,X,new Response(u.value.body,{headers:d,status:u.value.status||200})),null};D&&B?await i(B):(r=H.getActiveScopeSpan(),await H.withPropagatedContext(e.headers,()=>H.trace(d.BaseServerSpan.handleRequest,{spanName:`${F} ${k}`,kind:o.SpanKind.SERVER,attributes:{"http.method":F,"http.target":e.url}},i),void 0,!D))}catch(t){if(t instanceof g.NoFallbackError||await I.onRequestError(e,t,{routerKind:"App Router",routePath:N,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:j,isOnDemandRevalidate:C})},!1,E),P)throw t;return await (0,p.sendResponse)(G,X,new Response(null,{status:500})),null}}e.s(["handler",0,q,"patchFetch",0,function(){return(0,s.patchFetch)({workAsyncStorage:P,workUnitAsyncStorage:U})},"routeModule",0,I,"serverHooks",0,_,"workAsyncStorage",0,P,"workUnitAsyncStorage",0,U],62952)}];
19
+ `))}catch{n=!0}}let o=(0,S.spawn)("claude",["-p","--output-format","stream-json","--verbose","--model",r,"--tools","","--disable-slash-commands","--no-session-persistence","--setting-sources","","--append-system-prompt",A],{stdio:["pipe","pipe","pipe"],env:{...process.env}});o.stdin.write(i),o.stdin.end();let a="";o.stdout.on("data",e=>{for(let t of e.toString("utf8").split("\n")){let e=t.trim();if(e)try{let t=JSON.parse(e);if("assistant"===t.type){let e=t.message,n=e?.content;if(Array.isArray(n))for(let e of n)"text"===e.type&&"string"==typeof e.text&&s({type:"delta",text:e.text})}if("result"===t.type){let e=t.usage,n="number"==typeof e?.input_tokens&&"number"==typeof e?.output_tokens?e.input_tokens+e.output_tokens:void 0;s({type:"done",totalTokens:n??void 0})}}catch{}}}),o.stderr.on("data",e=>{a+=e.toString("utf8")}),o.on("close",e=>{if(0===e||n||s({type:"error",message:a.trim().slice(0,300)||`claude exited with code ${e}`}),!n){try{t.close()}catch{}n=!0}}),o.on("error",e=>{if(!n){s({type:"error",message:`Failed to spawn claude: ${e.message}`});try{t.close()}catch{}n=!0}}),e.signal.addEventListener("abort",()=>{try{o.kill("SIGTERM")}catch{}if(!n){try{t.close()}catch{}n=!0}})}}),{headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache, no-transform",Connection:"keep-alive","X-Accel-Buffering":"no"}})}e.s(["POST",0,T,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],10796);var I=e.i(10796);let N=new t.AppRouteRouteModule({definition:{kind:n.RouteKind.APP_ROUTE,page:"/api/ask/route",pathname:"/api/ask",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/apps/web/app/api/ask/route.ts",nextConfigOutput:"standalone",userland:I,...{}}),{workAsyncStorage:P,workUnitAsyncStorage:U,serverHooks:_}=N;async function q(e,t,s){s.requestMeta&&(0,r.setRequestMeta)(e,s.requestMeta),N.isDev&&(0,r.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let k="/api/ask/route";k=k.replace(/\/index$/,"")||"/";let y=await N.prepare(e,t,{srcPage:k,multiZoneDraftMode:!1});if(!y)return t.statusCode=400,t.end("Bad Request"),null==s.waitUntil||s.waitUntil.call(s,Promise.resolve()),null;let{buildId:w,params:R,nextConfig:M,parsedUrl:$,isDraftMode:x,prerenderManifest:O,routerServerContext:E,isOnDemandRevalidate:C,revalidateOnlyGenerated:b,resolvedPathname:S,clientReferenceManifest:A,serverActionsManifest:T}=y,I=(0,i.normalizeAppPath)(k),P=!!(O.dynamicRoutes[I]||O.routes[S]),U=async()=>((null==E?void 0:E.render404)?await E.render404(e,t,$,!1):t.end("This page could not be found"),null);if(P&&!x){let e=!!O.routes[S],t=O.dynamicRoutes[I];if(t&&!1===t.fallback&&!e){if(M.adapterPath)return await U();throw new g.NoFallbackError}}let _=null;!P||N.isDev||x||(_="/index"===(_=S)?"/":_);let q=!0===N.isDev||!P,j=P&&!q;T&&A&&(0,a.setManifestsSingleton)({page:k,clientReferenceManifest:A,serverActionsManifest:T});let F=e.method||"GET",H=(0,o.getTracer)(),B=H.getActiveScopeSpan(),D=!!(null==E?void 0:E.isWrappedByNextServer),W=!!(0,r.getRequestMeta)(e,"minimalMode"),K=(0,r.getRequestMeta)(e,"incrementalCache")||await N.getIncrementalCache(e,M,O,W);null==K||K.resetRequestCache(),globalThis.__incrementalCache=K;let L={params:R,previewProps:O.preview,renderOpts:{experimental:{authInterrupts:!!M.experimental.authInterrupts},cacheComponents:!!M.cacheComponents,supportsDynamicResponse:q,incrementalCache:K,cacheLifeProfiles:M.cacheLife,waitUntil:s.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,n,s,r)=>N.onRequestError(e,t,s,r,E)},sharedContext:{buildId:w}},G=new l.NodeNextRequest(e),X=new l.NodeNextResponse(t),z=u.NextRequestAdapter.fromNodeNextRequest(G,(0,u.signalFromNodeResponse)(t));try{let r,a=async e=>N.handle(z,L).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let n=H.getRootSpanAttributes();if(!n)return;if(n.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${n.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let s=n.get("next.route");if(s){let t=`${F} ${s}`;e.setAttributes({"next.route":s,"http.route":s,"next.span_name":t}),e.updateName(t),r&&r!==e&&(r.setAttribute("http.route",s),r.updateName(t))}else e.updateName(`${F} ${k}`)}),i=async r=>{var o,i;let l=async({previousCacheEntry:n})=>{try{if(!W&&C&&b&&!n)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let o=await a(r);e.fetchMetrics=L.renderOpts.fetchMetrics;let i=L.renderOpts.pendingWaitUntil;i&&s.waitUntil&&(s.waitUntil(i),i=void 0);let l=L.renderOpts.collectedTags;if(!P)return await (0,p.sendResponse)(G,X,o,L.renderOpts.pendingWaitUntil),null;{let e=await o.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(o.headers);l&&(t[m.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let n=void 0!==L.renderOpts.collectedRevalidate&&!(L.renderOpts.collectedRevalidate>=m.INFINITE_CACHE)&&L.renderOpts.collectedRevalidate,s=void 0===L.renderOpts.collectedExpire||L.renderOpts.collectedExpire>=m.INFINITE_CACHE?void 0:L.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:o.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:n,expire:s}}}}catch(t){throw(null==n?void 0:n.isStale)&&await N.onRequestError(e,t,{routerKind:"App Router",routePath:k,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:j,isOnDemandRevalidate:C})},!1,E),t}},u=await N.handleResponse({req:e,nextConfig:M,cacheKey:_,routeKind:n.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:O,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:b,responseGenerator:l,waitUntil:s.waitUntil,isMinimalMode:W});if(!P)return null;if((null==u||null==(o=u.value)?void 0:o.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==u||null==(i=u.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});W||t.setHeader("x-nextjs-cache",C?"REVALIDATED":u.isMiss?"MISS":u.isStale?"STALE":"HIT"),x&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let d=(0,f.fromNodeOutgoingHttpHeaders)(u.value.headers);return W&&P||d.delete(m.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||d.get("Cache-Control")||d.set("Cache-Control",(0,h.getCacheControlHeader)(u.cacheControl)),await (0,p.sendResponse)(G,X,new Response(u.value.body,{headers:d,status:u.value.status||200})),null};D&&B?await i(B):(r=H.getActiveScopeSpan(),await H.withPropagatedContext(e.headers,()=>H.trace(d.BaseServerSpan.handleRequest,{spanName:`${F} ${k}`,kind:o.SpanKind.SERVER,attributes:{"http.method":F,"http.target":e.url}},i),void 0,!D))}catch(t){if(t instanceof g.NoFallbackError||await N.onRequestError(e,t,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:j,isOnDemandRevalidate:C})},!1,E),P)throw t;return await (0,p.sendResponse)(G,X,new Response(null,{status:500})),null}}e.s(["handler",0,q,"patchFetch",0,function(){return(0,s.patchFetch)({workAsyncStorage:P,workUnitAsyncStorage:U})},"routeModule",0,N,"serverHooks",0,_,"workAsyncStorage",0,P,"workUnitAsyncStorage",0,U],62952)}];
20
20
 
21
21
  //# sourceMappingURL=node_modules_next_dist_esm_build_templates_app-route_0ck.78s.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[30212,e=>{"use strict";var t=e.i(79357);function n(e){return(0,t.toLocalDay)(e.getTime())}function r(e=new Date){let t=new Date(e.getFullYear(),e.getMonth(),e.getDate()),n=t.getDay(),i=new Date(t);i.setDate(t.getDate()-(n+6)%7);let s=new Date(i);return s.setDate(i.getDate()+6),{start:i,end:s}}e.s(["aggregateConcurrency",0,function(e,t){let r,i=function(e,t){let n=[],r=new Date(e.getFullYear(),e.getMonth(),e.getDate()),i=new Date(t.getFullYear(),t.getMonth(),t.getDate());for(;r.getTime()<=i.getTime();)n.push(new Date(r)),r.setDate(r.getDate()+1);return n}(t.start,t.end),s=new Map;for(let e of i)s.set(n(e),{peak:0,has_cross_project:!1});for(let t of e){let e=n(new Date(t.startMs)),r=s.get(e);r&&(t.peak>r.peak&&(r.peak=t.peak),t.crossProject&&(r.has_cross_project=!0))}let a=i.map(e=>{let t=n(e),r=s.get(t);return{date:t,peak:r.peak,has_cross_project:r.has_cross_project}}),o=0,l=0,u=0;for(let e of a)e.peak>o&&(o=e.peak,r=e.date),e.peak>=3&&l++,e.has_cross_project&&u++;return{by_day:a,peak:o,peak_day:r,multi_agent_days:l,cross_project_days:u}},"calendarMonth",0,function(e=new Date){return{start:new Date(e.getFullYear(),e.getMonth(),1),end:new Date(e.getFullYear(),e.getMonth()+1,0)}},"calendarWeek",0,r,"priorCalendarMonth",0,function(e=new Date){return{start:new Date(e.getFullYear(),e.getMonth()-1,1),end:new Date(e.getFullYear(),e.getMonth(),0)}},"priorCalendarWeek",0,function(e=new Date){let t=r(e),n=new Date(t.start);n.setDate(t.start.getDate()-1);let i=new Date(n);return i.setDate(n.getDate()-6),{start:i,end:n}}])},5737,54853,76956,e=>{"use strict";var t=e.i(2157),n=e.i(66680),r=e.i(50227),i=e.i(60526);function s(e,t){return`${e}__${t}`}function a(e){let t=/^([^_]+(?:_[^_]+)*)__(\d{4}-\d{2}-\d{2})$/.exec(e);return t?{session_id:t[1],local_day:t[2]}:null}e.s(["CURRENT_DAY_DIGEST_SCHEMA_VERSION",0,2,"CURRENT_MONTH_DIGEST_SCHEMA_VERSION",0,2,"CURRENT_WEEK_DIGEST_SCHEMA_VERSION",0,2,"GOAL_CATEGORIES",0,["build","plan","debug","review","steer","meta","research","refactor","test","release","warmup_minimal"],"PROMPT_FRAME_ORIGIN",0,{teammate:"claude-feature","task-notification":"claude-feature","local-command-caveat":"claude-feature","image-attached":"claude-feature","slash-command":"claude-feature","handoff-prose":"personal-habit"},"entryKey",0,s,"parseEntryKey",0,a],54853);let o=null;function l(){return o||(o=process.env.CCLENS_DIGESTS_DIR??(0,r.join)((0,i.homedir)(),".cclens","digests"))}function u(e){return(0,r.join)(l(),"day",`${e}.json`)}function c(e){return(0,r.join)(l(),"week",`${e}.json`)}function d(e){return(0,r.join)(l(),"month",`${e}.json`)}let f=null,m=null,p=null;e.s(["getCurrentMonthDigestFromCache",0,function(e,t){return!p||p.yearMonth!==e||t-p.writtenAtMs>6e5?null:p.digest},"getCurrentWeekDigestFromCache",0,function(e,t){return!m||m.monday!==e||t-m.writtenAtMs>6e5?null:m.digest},"getTodayDigestFromCache",0,function(e,t){return!f||f.date!==e||t-f.writtenAtMs>6e5?null:f.digest},"listMonthDigestKeys",0,function(){let e=(0,r.join)(l(),"month");return(0,t.existsSync)(e)?(0,t.readdirSync)(e).filter(e=>e.endsWith(".json")).map(e=>e.slice(0,-5)).filter(e=>/^\d{4}-\d{2}$/.test(e)):[]},"listWeekDigestKeys",0,function(){let e=(0,r.join)(l(),"week");return(0,t.existsSync)(e)?(0,t.readdirSync)(e).filter(e=>e.endsWith(".json")).map(e=>e.slice(0,-5)).filter(e=>/^\d{4}-\d{2}-\d{2}$/.test(e)):[]},"readDayDigest",0,function(e){let n=u(e);if(!(0,t.existsSync)(n))return null;try{return JSON.parse((0,t.readFileSync)(n,"utf8"))}catch{return null}},"readMonthDigest",0,function(e){let n=d(e);if(!(0,t.existsSync)(n))return null;try{return JSON.parse((0,t.readFileSync)(n,"utf8"))}catch{return null}},"readWeekDigest",0,function(e){let n=c(e);if(!(0,t.existsSync)(n))return null;try{return JSON.parse((0,t.readFileSync)(n,"utf8"))}catch{return null}},"setCurrentMonthDigestInCache",0,function(e,t,n){p={yearMonth:e,digest:t,writtenAtMs:n}},"setCurrentWeekDigestInCache",0,function(e,t,n){m={monday:e,digest:t,writtenAtMs:n}},"setTodayDigestInCache",0,function(e,t,n){f={date:e,digest:t,writtenAtMs:n}},"writeDayDigest",0,function(e){let n=u(e.key);(0,t.mkdirSync)((0,r.dirname)(n),{recursive:!0});let i=`${n}.tmp`;(0,t.writeFileSync)(i,JSON.stringify(e,null,2),"utf8");try{(0,t.chmodSync)(i,384)}catch{}(0,t.renameSync)(i,n)},"writeMonthDigest",0,function(e){let n=d(e.key);(0,t.mkdirSync)((0,r.dirname)(n),{recursive:!0});let i=`${n}.tmp`;(0,t.writeFileSync)(i,JSON.stringify(e,null,2),"utf8");try{(0,t.chmodSync)(i,384)}catch{}(0,t.renameSync)(i,n)},"writeWeekDigest",0,function(e){let n=c(e.key);(0,t.mkdirSync)((0,r.dirname)(n),{recursive:!0});let i=`${n}.tmp`;(0,t.writeFileSync)(i,JSON.stringify(e,null,2),"utf8");try{(0,t.chmodSync)(i,384)}catch{}(0,t.renameSync)(i,n)}],76956);let h=null;function g(){return h||(h=process.env.CCLENS_ENTRIES_DIR??(0,r.join)((0,i.homedir)(),".cclens","entries"))}function y(e,t){return(0,r.join)(g(),`${s(e,t)}.json`)}function w(){let e=g();return(0,t.existsSync)(e)?(0,t.readdirSync)(e).filter(e=>e.endsWith(".json")).map(e=>e.slice(0,-5)):[]}e.s(["listEntriesForDay",0,function(e){let n=[];for(let r of w()){let i=a(r);if(!i||i.local_day!==e)continue;let s=function(e,n){let r=y(e,n);return(0,t.existsSync)(r)?JSON.parse((0,t.readFileSync)(r,"utf8")):null}(i.session_id,i.local_day);s&&n.push(s)}return n},"listEntryKeys",0,w,"writeEntry",0,function(e){let r=g();(0,t.mkdirSync)(r,{recursive:!0});let i=y(e.session_id,e.local_day),s=`${i}.tmp.${process.pid}.${(0,n.randomBytes)(4).toString("hex")}`,a=JSON.stringify(e,null,2);(0,t.writeFileSync)(s,a,{encoding:"utf8"}),(0,t.renameSync)(s,i)}],5737)},91530,e=>{"use strict";e.i(27174);var t=e.i(36521);let n=/^<teammate-message\b/,r=/^Base directory for this skill:/,i=/^<command-name>|^<local-command-stdout>/;function s(e){let t=`${e.description} ${e.prompt_preview}`.toLowerCase();return/\b(re-?review|review[s]?|verify|audit|spec[- ]review|code[- ]quality|code[- ]reuse|efficiency review|sanity check|quick test)\b/.test(t)?"reviewer":/\b(implement|build chunk|build task|initialize|create the|add the)\b/.test(t)?"implementer":/\bexplore\b|\binventory\b|\bmap\b.*\b(codebase|repo|branch)\b|\baudit\b.*coverage/.test(t)?"explorer":/\b(investigate|research|reverse[- ]engineer|study|analy[sz]e|look up|tell me|brief me on|find out)\b/.test(t)?"researcher":/\b(env(?:ironment)? setup|configure|setup|bootstrap)\b/.test(t)?"env-setup":/\b(polish|cleanup|fix|refactor)\b/.test(t)?"polish":"other"}let a=/^(general-purpose|Explore|Plan|claude-code-guide|playwright-qa-verifier|statusline-setup|frontend-design:|code-review:|code-simplifier:|codex:|superpowers:)/;function o(e){if(e.numbers.turn_count<2)return null;let t=e.subagents??[],n=t.map(s),r=n.filter(e=>"reviewer"===e).length,i=n.filter(e=>"implementer"===e).length,a=n.filter(e=>"explorer"===e||"researcher"===e).length,o=t.some(e=>e.background);if(i>=2&&t.filter(e=>/\b(chunk|task)\s*\d+/i.test(`${e.description} ${e.prompt_preview}`)).length>=2)return"chunk-implementation";if(r>=3&&0===i){let e=new Set;for(let r=0;r<t.length;r++){if("reviewer"!==n[r])continue;let i=t[r].description.toLowerCase().replace(/[^a-z0-9 ]/g,"").split(/\s+/).filter(e=>e.length>2).slice(0,3).join("|");e.add(i)}if(e.size>=3)return"reviewer-triad"}if(r>=2)return"spec-review-loop";if(a>=2||a>=1&&i>=1)return"research-then-build";if(o&&t.length>=1)return"background-coordinated";if(0===t.length){let t=(e.first_user||"").trim().toLowerCase();if(/^continue\b/.test(t)||"continue."===t)return"solo-continuation";if(Object.keys(e.skills??{}).some(e=>/brainstorm|writing-plans|brainstorming/i.test(e)))return"solo-design"}return"solo-build"}function l(e){if(!e)return[];let t=[];return/<teammate-message\b/i.test(e)&&t.push("teammate"),/<task-notification\b/i.test(e)&&t.push("task-notification"),/<local-command-caveat\b/i.test(e)&&t.push("local-command-caveat"),/<command-(message|name)\b/i.test(e)&&t.push("slash-command"),/\[Image #\d+\]/.test(e)&&t.push("image-attached"),(/\b(here'?s the (handoff|handover) prompt|session-close summary|wrap-up summary|all wrapped up|all captured\.)\b/i.test(e)||/^##? (Wrap-up|Session conclusion|Handoff)\b/m.test(e)||/^# Handoff:/m.test(e))&&t.push("handoff-prose"),t}let u=/^(superpowers|mcp__|frontend-design|code-review|codex|claude-code-guide|claude-api):/i,c=[{kind:"linear-kip",re:/\bKIP-\d+\b/i},{kind:"github-issue-pr",re:/\b(issue|pr|pull request)\s*#\d+\b|github\.com\/[^\s]+\/(issues|pull)\/\d+/i},{kind:"branch-ref",re:/\b(branch|feat|fix|chore|refactor)[/:]\s*[\w./-]+|on `[\w./-]+`/i},{kind:"url",re:/https?:\/\/\S+/}];e.s(["classifySkill",0,function(e){return e.startsWith("(ToolSearch:")?"infra":u.test(e)||"using-superpowers"===e?"stock":"user"},"classifyUserInputSource",0,function(e){if(!e)return"human";let s=(0,t.stripFrameworkBoilerplate)(e);return s?n.test(s)?"teammate":r.test(s)?"skill_load":i.test(s)?"slash_command":"human":"system_instruction"},"computeEntrySignals",0,function(e){var t;let n=e.first_user||"",r=(t=n.length)<100?"short":t<500?"medium":t<2e3?"long":"very_long",i=function(e){if(!e||/<teammate-message|<task-notification|<local-command-caveat/i.test(e.slice(0,400)))return null;for(let{kind:t,re:n}of c)if(e.match(n))return{kind:t,preview:e.slice(0,160)};return null}(n),a=Object.keys(e.skills??{}).some(e=>/brainstorm|writing-plans/i.test(e)),u=n.trim().toLowerCase(),d=l(n),f=/^continue\b/.test(u)||"continue."===u?"literal-continue":d.includes("handoff-prose")?"handoff-prose":"none";return{working_shape:o(e),prompt_frames:d,subagent_roles:(e.subagents??[]).map(s),verbosity:r,external_refs:i?[i]:[],brainstorm_warmup:a,continuation_kind:f}},"detectPromptFrames",0,l,"inferWorkingShape",0,o,"isStockSubagentType",0,function(e){return a.test(e)}])}];
2
+
3
+ //# sourceMappingURL=packages_09wmnv.._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[91530,e=>{"use strict";e.i(27174);var t=e.i(36521);let n=/^<teammate-message\b/,r=/^Base directory for this skill:/,i=/^<command-name>|^<local-command-stdout>/;function s(e){let t=`${e.description} ${e.prompt_preview}`.toLowerCase();return/\b(re-?review|review[s]?|verify|audit|spec[- ]review|code[- ]quality|code[- ]reuse|efficiency review|sanity check|quick test)\b/.test(t)?"reviewer":/\b(implement|build chunk|build task|initialize|create the|add the)\b/.test(t)?"implementer":/\bexplore\b|\binventory\b|\bmap\b.*\b(codebase|repo|branch)\b|\baudit\b.*coverage/.test(t)?"explorer":/\b(investigate|research|reverse[- ]engineer|study|analy[sz]e|look up|tell me|brief me on|find out)\b/.test(t)?"researcher":/\b(env(?:ironment)? setup|configure|setup|bootstrap)\b/.test(t)?"env-setup":/\b(polish|cleanup|fix|refactor)\b/.test(t)?"polish":"other"}let a=/^(general-purpose|Explore|Plan|claude-code-guide|playwright-qa-verifier|statusline-setup|frontend-design:|code-review:|code-simplifier:|codex:|superpowers:)/;function o(e){if(e.numbers.turn_count<2)return null;let t=e.subagents??[],n=t.map(s),r=n.filter(e=>"reviewer"===e).length,i=n.filter(e=>"implementer"===e).length,a=n.filter(e=>"explorer"===e||"researcher"===e).length,o=t.some(e=>e.background);if(i>=2&&t.filter(e=>/\b(chunk|task)\s*\d+/i.test(`${e.description} ${e.prompt_preview}`)).length>=2)return"chunk-implementation";if(r>=3&&0===i){let e=new Set;for(let r=0;r<t.length;r++){if("reviewer"!==n[r])continue;let i=t[r].description.toLowerCase().replace(/[^a-z0-9 ]/g,"").split(/\s+/).filter(e=>e.length>2).slice(0,3).join("|");e.add(i)}if(e.size>=3)return"reviewer-triad"}if(r>=2)return"spec-review-loop";if(a>=2||a>=1&&i>=1)return"research-then-build";if(o&&t.length>=1)return"background-coordinated";if(0===t.length){let t=(e.first_user||"").trim().toLowerCase();if(/^continue\b/.test(t)||"continue."===t)return"solo-continuation";if(Object.keys(e.skills??{}).some(e=>/brainstorm|writing-plans|brainstorming/i.test(e)))return"solo-design"}return"solo-build"}function l(e){if(!e)return[];let t=[];return/<teammate-message\b/i.test(e)&&t.push("teammate"),/<task-notification\b/i.test(e)&&t.push("task-notification"),/<local-command-caveat\b/i.test(e)&&t.push("local-command-caveat"),/<command-(message|name)\b/i.test(e)&&t.push("slash-command"),/\[Image #\d+\]/.test(e)&&t.push("image-attached"),(/\b(here'?s the (handoff|handover) prompt|session-close summary|wrap-up summary|all wrapped up|all captured\.)\b/i.test(e)||/^##? (Wrap-up|Session conclusion|Handoff)\b/m.test(e)||/^# Handoff:/m.test(e))&&t.push("handoff-prose"),t}let u=/^(superpowers|mcp__|frontend-design|code-review|codex|claude-code-guide|claude-api):/i,c=[{kind:"linear-kip",re:/\bKIP-\d+\b/i},{kind:"github-issue-pr",re:/\b(issue|pr|pull request)\s*#\d+\b|github\.com\/[^\s]+\/(issues|pull)\/\d+/i},{kind:"branch-ref",re:/\b(branch|feat|fix|chore|refactor)[/:]\s*[\w./-]+|on `[\w./-]+`/i},{kind:"url",re:/https?:\/\/\S+/}];e.s(["classifySkill",0,function(e){return e.startsWith("(ToolSearch:")?"infra":u.test(e)||"using-superpowers"===e?"stock":"user"},"classifyUserInputSource",0,function(e){if(!e)return"human";let s=(0,t.stripFrameworkBoilerplate)(e);return s?n.test(s)?"teammate":r.test(s)?"skill_load":i.test(s)?"slash_command":"human":"system_instruction"},"computeEntrySignals",0,function(e){var t;let n=e.first_user||"",r=(t=n.length)<100?"short":t<500?"medium":t<2e3?"long":"very_long",i=function(e){if(!e||/<teammate-message|<task-notification|<local-command-caveat/i.test(e.slice(0,400)))return null;for(let{kind:t,re:n}of c)if(e.match(n))return{kind:t,preview:e.slice(0,160)};return null}(n),a=Object.keys(e.skills??{}).some(e=>/brainstorm|writing-plans/i.test(e)),u=n.trim().toLowerCase(),d=l(n),f=/^continue\b/.test(u)||"continue."===u?"literal-continue":d.includes("handoff-prose")?"handoff-prose":"none";return{working_shape:o(e),prompt_frames:d,subagent_roles:(e.subagents??[]).map(s),verbosity:r,external_refs:i?[i]:[],brainstorm_warmup:a,continuation_kind:f}},"detectPromptFrames",0,l,"inferWorkingShape",0,o,"isStockSubagentType",0,function(e){return a.test(e)}])},5737,54853,76956,e=>{"use strict";var t=e.i(2157),n=e.i(66680),r=e.i(50227),i=e.i(60526);function s(e,t){return`${e}__${t}`}function a(e){let t=/^([^_]+(?:_[^_]+)*)__(\d{4}-\d{2}-\d{2})$/.exec(e);return t?{session_id:t[1],local_day:t[2]}:null}e.s(["CURRENT_DAY_DIGEST_SCHEMA_VERSION",0,2,"CURRENT_MONTH_DIGEST_SCHEMA_VERSION",0,2,"CURRENT_WEEK_DIGEST_SCHEMA_VERSION",0,2,"GOAL_CATEGORIES",0,["build","plan","debug","review","steer","meta","research","refactor","test","release","warmup_minimal"],"PROMPT_FRAME_ORIGIN",0,{teammate:"claude-feature","task-notification":"claude-feature","local-command-caveat":"claude-feature","image-attached":"claude-feature","slash-command":"claude-feature","handoff-prose":"personal-habit"},"entryKey",0,s,"parseEntryKey",0,a],54853);let o=null;function l(){return o||(o=process.env.CCLENS_DIGESTS_DIR??(0,r.join)((0,i.homedir)(),".cclens","digests"))}function u(e){return(0,r.join)(l(),"day",`${e}.json`)}function c(e){return(0,r.join)(l(),"week",`${e}.json`)}function d(e){return(0,r.join)(l(),"month",`${e}.json`)}let f=null,m=null,p=null;e.s(["getCurrentMonthDigestFromCache",0,function(e,t){return!p||p.yearMonth!==e||t-p.writtenAtMs>6e5?null:p.digest},"getCurrentWeekDigestFromCache",0,function(e,t){return!m||m.monday!==e||t-m.writtenAtMs>6e5?null:m.digest},"getTodayDigestFromCache",0,function(e,t){return!f||f.date!==e||t-f.writtenAtMs>6e5?null:f.digest},"listMonthDigestKeys",0,function(){let e=(0,r.join)(l(),"month");return(0,t.existsSync)(e)?(0,t.readdirSync)(e).filter(e=>e.endsWith(".json")).map(e=>e.slice(0,-5)).filter(e=>/^\d{4}-\d{2}$/.test(e)):[]},"listWeekDigestKeys",0,function(){let e=(0,r.join)(l(),"week");return(0,t.existsSync)(e)?(0,t.readdirSync)(e).filter(e=>e.endsWith(".json")).map(e=>e.slice(0,-5)).filter(e=>/^\d{4}-\d{2}-\d{2}$/.test(e)):[]},"readDayDigest",0,function(e){let n=u(e);if(!(0,t.existsSync)(n))return null;try{return JSON.parse((0,t.readFileSync)(n,"utf8"))}catch{return null}},"readMonthDigest",0,function(e){let n=d(e);if(!(0,t.existsSync)(n))return null;try{return JSON.parse((0,t.readFileSync)(n,"utf8"))}catch{return null}},"readWeekDigest",0,function(e){let n=c(e);if(!(0,t.existsSync)(n))return null;try{return JSON.parse((0,t.readFileSync)(n,"utf8"))}catch{return null}},"setCurrentMonthDigestInCache",0,function(e,t,n){p={yearMonth:e,digest:t,writtenAtMs:n}},"setCurrentWeekDigestInCache",0,function(e,t,n){m={monday:e,digest:t,writtenAtMs:n}},"setTodayDigestInCache",0,function(e,t,n){f={date:e,digest:t,writtenAtMs:n}},"writeDayDigest",0,function(e){let n=u(e.key);(0,t.mkdirSync)((0,r.dirname)(n),{recursive:!0});let i=`${n}.tmp`;(0,t.writeFileSync)(i,JSON.stringify(e,null,2),"utf8");try{(0,t.chmodSync)(i,384)}catch{}(0,t.renameSync)(i,n)},"writeMonthDigest",0,function(e){let n=d(e.key);(0,t.mkdirSync)((0,r.dirname)(n),{recursive:!0});let i=`${n}.tmp`;(0,t.writeFileSync)(i,JSON.stringify(e,null,2),"utf8");try{(0,t.chmodSync)(i,384)}catch{}(0,t.renameSync)(i,n)},"writeWeekDigest",0,function(e){let n=c(e.key);(0,t.mkdirSync)((0,r.dirname)(n),{recursive:!0});let i=`${n}.tmp`;(0,t.writeFileSync)(i,JSON.stringify(e,null,2),"utf8");try{(0,t.chmodSync)(i,384)}catch{}(0,t.renameSync)(i,n)}],76956);let h=null;function g(){return h||(h=process.env.CCLENS_ENTRIES_DIR??(0,r.join)((0,i.homedir)(),".cclens","entries"))}function y(e,t){return(0,r.join)(g(),`${s(e,t)}.json`)}function w(){let e=g();return(0,t.existsSync)(e)?(0,t.readdirSync)(e).filter(e=>e.endsWith(".json")).map(e=>e.slice(0,-5)):[]}e.s(["listEntriesForDay",0,function(e){let n=[];for(let r of w()){let i=a(r);if(!i||i.local_day!==e)continue;let s=function(e,n){let r=y(e,n);return(0,t.existsSync)(r)?JSON.parse((0,t.readFileSync)(r,"utf8")):null}(i.session_id,i.local_day);s&&n.push(s)}return n},"listEntryKeys",0,w,"writeEntry",0,function(e){let r=g();(0,t.mkdirSync)(r,{recursive:!0});let i=y(e.session_id,e.local_day),s=`${i}.tmp.${process.pid}.${(0,n.randomBytes)(4).toString("hex")}`,a=JSON.stringify(e,null,2);(0,t.writeFileSync)(s,a,{encoding:"utf8"}),(0,t.renameSync)(s,i)}],5737)},30212,e=>{"use strict";var t=e.i(79357);function n(e){return(0,t.toLocalDay)(e.getTime())}function r(e=new Date){let t=new Date(e.getFullYear(),e.getMonth(),e.getDate()),n=t.getDay(),i=new Date(t);i.setDate(t.getDate()-(n+6)%7);let s=new Date(i);return s.setDate(i.getDate()+6),{start:i,end:s}}e.s(["aggregateConcurrency",0,function(e,t){let r,i=function(e,t){let n=[],r=new Date(e.getFullYear(),e.getMonth(),e.getDate()),i=new Date(t.getFullYear(),t.getMonth(),t.getDate());for(;r.getTime()<=i.getTime();)n.push(new Date(r)),r.setDate(r.getDate()+1);return n}(t.start,t.end),s=new Map;for(let e of i)s.set(n(e),{peak:0,has_cross_project:!1});for(let t of e){let e=n(new Date(t.startMs)),r=s.get(e);r&&(t.peak>r.peak&&(r.peak=t.peak),t.crossProject&&(r.has_cross_project=!0))}let a=i.map(e=>{let t=n(e),r=s.get(t);return{date:t,peak:r.peak,has_cross_project:r.has_cross_project}}),o=0,l=0,u=0;for(let e of a)e.peak>o&&(o=e.peak,r=e.date),e.peak>=3&&l++,e.has_cross_project&&u++;return{by_day:a,peak:o,peak_day:r,multi_agent_days:l,cross_project_days:u}},"calendarMonth",0,function(e=new Date){return{start:new Date(e.getFullYear(),e.getMonth(),1),end:new Date(e.getFullYear(),e.getMonth()+1,0)}},"calendarWeek",0,r,"priorCalendarMonth",0,function(e=new Date){return{start:new Date(e.getFullYear(),e.getMonth()-1,1),end:new Date(e.getFullYear(),e.getMonth(),0)}},"priorCalendarWeek",0,function(e=new Date){let t=r(e),n=new Date(t.start);n.setDate(t.start.getDate()-1);let i=new Date(n);return i.setDate(n.getDate()-6),{start:i,end:n}}])}];
2
+
3
+ //# sourceMappingURL=packages_0o6.gpk._.js.map