@drewpayment/mink 0.5.1 → 0.6.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 (125) hide show
  1. package/README.md +21 -0
  2. package/dashboard/out/404.html +1 -1
  3. package/dashboard/out/_next/static/Dw8C--0lGz5BIGsnG-e5H/_buildManifest.js +1 -0
  4. package/dashboard/out/_next/static/chunks/189-fe789442321eb5eb.js +1 -0
  5. package/dashboard/out/_next/static/chunks/255-6b79f309a27fb98b.js +1 -0
  6. package/dashboard/out/_next/static/chunks/4bd1b696-c023c6e3521b1417.js +1 -0
  7. package/dashboard/out/_next/static/chunks/738-11c31dcbdbb98d77.js +1 -0
  8. package/dashboard/out/_next/static/chunks/926-6421b9e9b03abc7b.js +1 -0
  9. package/dashboard/out/_next/static/chunks/app/(panels)/action-log/page-1f507b433af52d16.js +1 -0
  10. package/dashboard/out/_next/static/chunks/app/(panels)/activity/page-096a97ba539d5323.js +1 -0
  11. package/dashboard/out/_next/static/chunks/app/(panels)/bugs/page-449d31c133432458.js +1 -0
  12. package/dashboard/out/_next/static/chunks/app/(panels)/capture/page-c6617aa0a8a7333e.js +1 -0
  13. package/dashboard/out/_next/static/chunks/app/(panels)/config/page-aa0a0623b3fdd0d8.js +1 -0
  14. package/dashboard/out/_next/static/chunks/app/(panels)/daemon/page-7cd3fac2f5d87a0d.js +1 -0
  15. package/dashboard/out/_next/static/chunks/app/(panels)/design/page-5304675c96b6793b.js +1 -0
  16. package/dashboard/out/_next/static/chunks/app/(panels)/discord/page-9940dde80ba2a69e.js +1 -0
  17. package/dashboard/out/_next/static/chunks/app/(panels)/file-index/page-ecd8a753614e981e.js +1 -0
  18. package/dashboard/out/_next/static/chunks/app/(panels)/insights/page-7909d8beb8d8ef7a.js +1 -0
  19. package/dashboard/out/_next/static/chunks/app/(panels)/learning/page-b766adc79099adb4.js +1 -0
  20. package/dashboard/out/_next/static/chunks/app/(panels)/overview/page-7a9e86dcde67d6a9.js +1 -0
  21. package/dashboard/out/_next/static/chunks/app/(panels)/scheduler/page-a88f93204c9742a1.js +1 -0
  22. package/dashboard/out/_next/static/chunks/app/(panels)/sync/page-8a9ad4c36aa6cb65.js +1 -0
  23. package/dashboard/out/_next/static/chunks/app/(panels)/tokens/page-8dac7d50d4db2756.js +1 -0
  24. package/dashboard/out/_next/static/chunks/app/(panels)/waste/page-bcf56144faf7d133.js +1 -0
  25. package/dashboard/out/_next/static/chunks/app/(panels)/wiki/page-a32fdbd0bf58b30b.js +1 -0
  26. package/dashboard/out/_next/static/chunks/app/_not-found/page-dc2312ec30d73c4e.js +1 -0
  27. package/dashboard/out/_next/static/chunks/app/layout-782cd26e0ccc4514.js +1 -0
  28. package/dashboard/out/_next/static/chunks/app/page-6aca8457abc5d313.js +1 -0
  29. package/dashboard/out/_next/static/chunks/framework-050c1f32293f7182.js +1 -0
  30. package/dashboard/out/_next/static/chunks/main-app-c2dc0acf542ec1c6.js +1 -0
  31. package/dashboard/out/_next/static/chunks/main-ed79d05490604b83.js +1 -0
  32. package/dashboard/out/_next/static/chunks/pages/_app-7d307437aca18ad4.js +1 -0
  33. package/dashboard/out/_next/static/chunks/pages/_error-cb2a52f75f2162e2.js +1 -0
  34. package/dashboard/out/_next/static/chunks/webpack-4e3139a490df1cfe.js +1 -0
  35. package/dashboard/out/_next/static/css/5e43917ea49c5b3e.css +1 -0
  36. package/dashboard/out/_next/static/media/0aa834ed78bf6d07-s.woff2 +0 -0
  37. package/dashboard/out/_next/static/media/19cfc7226ec3afaa-s.woff2 +0 -0
  38. package/dashboard/out/_next/static/media/21350d82a1f187e9-s.woff2 +0 -0
  39. package/dashboard/out/_next/static/media/67957d42bae0796d-s.woff2 +0 -0
  40. package/dashboard/out/_next/static/media/886030b0b59bc5a7-s.woff2 +0 -0
  41. package/dashboard/out/_next/static/media/8e9860b6e62d6359-s.woff2 +0 -0
  42. package/dashboard/out/_next/static/media/939c4f875ee75fbb-s.woff2 +0 -0
  43. package/dashboard/out/_next/static/media/ba9851c3c22cd980-s.woff2 +0 -0
  44. package/dashboard/out/_next/static/media/bb3ef058b751a6ad-s.p.woff2 +0 -0
  45. package/dashboard/out/_next/static/media/c5fe6dc8356a8c31-s.woff2 +0 -0
  46. package/dashboard/out/_next/static/media/df0a9ae256c0569c-s.woff2 +0 -0
  47. package/dashboard/out/_next/static/media/e4af272ccee01ff0-s.p.woff2 +0 -0
  48. package/dashboard/out/_next/static/media/f911b923c6adde36-s.woff2 +0 -0
  49. package/dashboard/out/action-log.html +1 -1
  50. package/dashboard/out/action-log.txt +23 -22
  51. package/dashboard/out/activity.html +1 -1
  52. package/dashboard/out/activity.txt +23 -22
  53. package/dashboard/out/bugs.html +1 -1
  54. package/dashboard/out/bugs.txt +23 -22
  55. package/dashboard/out/capture.html +1 -0
  56. package/dashboard/out/capture.txt +24 -0
  57. package/dashboard/out/config.html +1 -0
  58. package/dashboard/out/config.txt +24 -0
  59. package/dashboard/out/daemon.html +1 -0
  60. package/dashboard/out/daemon.txt +24 -0
  61. package/dashboard/out/design.html +1 -1
  62. package/dashboard/out/design.txt +23 -22
  63. package/dashboard/out/discord.html +1 -0
  64. package/dashboard/out/discord.txt +24 -0
  65. package/dashboard/out/file-index.html +1 -1
  66. package/dashboard/out/file-index.txt +23 -22
  67. package/dashboard/out/index.html +1 -1
  68. package/dashboard/out/index.txt +23 -22
  69. package/dashboard/out/insights.html +1 -1
  70. package/dashboard/out/insights.txt +23 -22
  71. package/dashboard/out/learning.html +1 -1
  72. package/dashboard/out/learning.txt +23 -22
  73. package/dashboard/out/overview.html +1 -1
  74. package/dashboard/out/overview.txt +23 -22
  75. package/dashboard/out/scheduler.html +1 -1
  76. package/dashboard/out/scheduler.txt +23 -22
  77. package/dashboard/out/sync.html +1 -0
  78. package/dashboard/out/sync.txt +24 -0
  79. package/dashboard/out/tokens.html +1 -1
  80. package/dashboard/out/tokens.txt +23 -22
  81. package/dashboard/out/waste.html +1 -0
  82. package/dashboard/out/waste.txt +24 -0
  83. package/dashboard/out/wiki.html +1 -0
  84. package/dashboard/out/wiki.txt +24 -0
  85. package/dist/cli.js +1695 -892
  86. package/package.json +1 -1
  87. package/src/core/daemon.ts +5 -3
  88. package/src/core/dashboard-api.ts +764 -1
  89. package/src/core/dashboard-server.ts +270 -0
  90. package/src/core/runtime.ts +7 -4
  91. package/src/core/vault.ts +4 -4
  92. package/src/types/config.ts +9 -1
  93. package/src/types/dashboard.ts +84 -1
  94. package/dashboard/out/_next/static/1wsj8DdMTS0IF2Rk9fkxV/_buildManifest.js +0 -1
  95. package/dashboard/out/_next/static/chunks/160-3e240a3c66269b3f.js +0 -1
  96. package/dashboard/out/_next/static/chunks/212-0f603e7affd3ee2a.js +0 -4
  97. package/dashboard/out/_next/static/chunks/255-b047925426c4e4ba.js +0 -1
  98. package/dashboard/out/_next/static/chunks/4bd1b696-409494caf8c83275.js +0 -1
  99. package/dashboard/out/_next/static/chunks/55-079130502e972d37.js +0 -1
  100. package/dashboard/out/_next/static/chunks/692-9c8d44014aa1813d.js +0 -1
  101. package/dashboard/out/_next/static/chunks/717-3d920b69f8c31178.js +0 -1
  102. package/dashboard/out/_next/static/chunks/752-8a8e79b1a2a3b489.js +0 -1
  103. package/dashboard/out/_next/static/chunks/83-ddf005b52ec7bd16.js +0 -1
  104. package/dashboard/out/_next/static/chunks/845-bed7bdd2fed7ff76.js +0 -1
  105. package/dashboard/out/_next/static/chunks/app/(panels)/action-log/page-c52cf3851d9d92d5.js +0 -1
  106. package/dashboard/out/_next/static/chunks/app/(panels)/activity/page-25a84ac9ddbbc077.js +0 -1
  107. package/dashboard/out/_next/static/chunks/app/(panels)/bugs/page-7de0b71150a91377.js +0 -1
  108. package/dashboard/out/_next/static/chunks/app/(panels)/design/page-a2153b4f18533187.js +0 -1
  109. package/dashboard/out/_next/static/chunks/app/(panels)/file-index/page-b37bdd2344d3f81c.js +0 -1
  110. package/dashboard/out/_next/static/chunks/app/(panels)/insights/page-b9cea601167e83d1.js +0 -1
  111. package/dashboard/out/_next/static/chunks/app/(panels)/learning/page-faa4afcf1473c9e5.js +0 -1
  112. package/dashboard/out/_next/static/chunks/app/(panels)/overview/page-354f274bc72789a8.js +0 -1
  113. package/dashboard/out/_next/static/chunks/app/(panels)/scheduler/page-fc11b7fbbd04a4d7.js +0 -1
  114. package/dashboard/out/_next/static/chunks/app/(panels)/tokens/page-c08c102aa883500a.js +0 -1
  115. package/dashboard/out/_next/static/chunks/app/_not-found/page-88217a29323e3700.js +0 -1
  116. package/dashboard/out/_next/static/chunks/app/layout-93083f9f140da937.js +0 -1
  117. package/dashboard/out/_next/static/chunks/app/page-0e7a5cffcfa1d064.js +0 -1
  118. package/dashboard/out/_next/static/chunks/framework-1a308e28e19f1a97.js +0 -1
  119. package/dashboard/out/_next/static/chunks/main-7c6d83fa0f7c5e5b.js +0 -1
  120. package/dashboard/out/_next/static/chunks/main-app-2f83d483d67187ef.js +0 -1
  121. package/dashboard/out/_next/static/chunks/pages/_app-5addca2b3b969fde.js +0 -1
  122. package/dashboard/out/_next/static/chunks/pages/_error-022e4ac7bbb9914f.js +0 -1
  123. package/dashboard/out/_next/static/chunks/webpack-ee71d9ae9be3609d.js +0 -1
  124. package/dashboard/out/_next/static/css/cfd58816f9a2afb9.css +0 -1
  125. /package/dashboard/out/_next/static/{1wsj8DdMTS0IF2Rk9fkxV → Dw8C--0lGz5BIGsnG-e5H}/_ssgManifest.js +0 -0
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[119],{366:(e,t,r)=>{Promise.resolve().then(r.bind(r,55268))},25016:(e,t,r)=>{"use strict";r.d(t,{cn:()=>n});var s=r(2821),a=r(75889);function n(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return(0,a.QP)((0,s.$)(t))}},33789:(e,t,r)=>{"use strict";r.d(t,{p:()=>n});var s=r(95155);r(12115);var a=r(25016);function n(e){let{className:t,type:r,...n}=e;return(0,s.jsx)("input",{type:r,"data-slot":"input",className:(0,a.cn)("h-9 w-full min-w-0 rounded-md border border-input bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none selection:bg-primary selection:text-primary-foreground file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm dark:bg-input/30","focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50","aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40",t),...n})}},55268:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>f});var s=r(95155),a=r(12115),n=r(46074),i=r(83928),l=r(67812),o=r(33789),d=r(68122),c=r(84114),u=r(86651);let g=["All","Read","Write","Create","Edit"];function x(){let e=(0,i.f)(e=>e.actionLog),[t,r]=(0,a.useState)(""),[x,f]=(0,a.useState)("All"),m=(0,a.useRef)(null),h=(0,a.useMemo)(()=>{let r=e;if("All"!==x&&(r=r.filter(e=>e.action.toLowerCase()===x.toLowerCase())),t.trim()){let e=t.toLowerCase();r=r.filter(t=>t.files.toLowerCase().includes(e)||t.outcome.toLowerCase().includes(e)||t.action.toLowerCase().includes(e))}return r},[e,t,x]),v=(0,n.Te)({count:h.length,getScrollElement:()=>m.current,estimateSize:()=>44,overscan:15});return e.length||i.f.getState().connected?(0,s.jsxs)("div",{className:"space-y-4",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)(c.A,{className:"h-4 w-4 text-muted-foreground"}),(0,s.jsxs)("span",{className:"text-sm text-muted-foreground",children:[e.length," entries"]})]}),(0,s.jsxs)("div",{className:"flex gap-2",children:[(0,s.jsxs)("div",{className:"relative flex-1",children:[(0,s.jsx)(u.A,{className:"absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-muted-foreground"}),(0,s.jsx)(o.p,{placeholder:"Search actions...",value:t,onChange:e=>r(e.target.value),className:"pl-9"})]}),(0,s.jsx)("div",{className:"flex gap-1",children:g.map(e=>(0,s.jsx)("button",{onClick:()=>f(e),className:"rounded-md px-3 py-1.5 text-xs font-medium transition-colors ".concat(x===e?"bg-primary text-primary-foreground":"bg-secondary text-secondary-foreground hover:bg-accent"),children:e},e))})]}),(0,s.jsxs)("p",{className:"text-xs text-muted-foreground",children:[h.length," results"]}),(0,s.jsxs)("div",{className:"rounded-md border",children:[(0,s.jsxs)("div",{className:"grid grid-cols-[60px_80px_1fr_1fr_80px] gap-2 border-b bg-muted/50 px-4 py-2 text-xs font-medium text-muted-foreground",children:[(0,s.jsx)("span",{children:"Time"}),(0,s.jsx)("span",{children:"Action"}),(0,s.jsx)("span",{children:"File(s)"}),(0,s.jsx)("span",{children:"Outcome"}),(0,s.jsx)("span",{className:"text-right",children:"~Tokens"})]}),(0,s.jsx)("div",{ref:m,className:"h-[500px] overflow-auto",children:0===h.length?(0,s.jsx)("div",{className:"py-8 text-center text-sm text-muted-foreground",children:"No matching entries"}):(0,s.jsx)("div",{style:{height:"".concat(v.getTotalSize(),"px"),width:"100%",position:"relative"},children:v.getVirtualItems().map(e=>{let t=h[e.index];return(0,s.jsxs)("div",{style:{position:"absolute",top:0,left:0,width:"100%",height:"".concat(e.size,"px"),transform:"translateY(".concat(e.start,"px)")},className:"grid grid-cols-[60px_80px_1fr_1fr_80px] gap-2 items-center border-b px-4 text-xs",children:[(0,s.jsx)("span",{className:"font-mono",children:t.time}),(0,s.jsx)("span",{children:(0,s.jsx)(l.E,{variant:function(e){switch(e.toLowerCase()){case"read":return"default";case"write":case"edit":return"secondary";default:return"outline"}}(t.action),className:"text-[10px]",children:t.action})}),(0,s.jsx)("span",{className:"truncate font-mono",children:t.files}),(0,s.jsx)("span",{className:"truncate text-muted-foreground",children:t.outcome}),(0,s.jsx)("span",{className:"text-right font-mono",children:t.tokens})]},e.key)})})})]})]}):(0,s.jsxs)("div",{className:"space-y-4",children:[(0,s.jsx)(d.E,{className:"h-10"}),(0,s.jsx)(d.E,{className:"h-96"})]})}function f(){return(0,s.jsx)(x,{})}},67812:(e,t,r)=>{"use strict";r.d(t,{E:()=>o});var s=r(95155);r(12115);var a=r(83101),n=r(32467),i=r(25016);let l=(0,a.F)("inline-flex w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-full border border-transparent px-2 py-0.5 text-xs font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3",{variants:{variant:{default:"bg-primary text-primary-foreground [a&]:hover:bg-primary/90",secondary:"bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",destructive:"bg-destructive text-white focus-visible:ring-destructive/20 dark:bg-destructive/60 dark:focus-visible:ring-destructive/40 [a&]:hover:bg-destructive/90",outline:"border-border text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground",ghost:"[a&]:hover:bg-accent [a&]:hover:text-accent-foreground",link:"text-primary underline-offset-4 [a&]:hover:underline"}},defaultVariants:{variant:"default"}});function o(e){let{className:t,variant:r="default",asChild:a=!1,...o}=e,d=a?n.bL:"span";return(0,s.jsx)(d,{"data-slot":"badge","data-variant":r,className:(0,i.cn)(l({variant:r}),t),...o})}},68122:(e,t,r)=>{"use strict";r.d(t,{E:()=>n});var s=r(95155),a=r(25016);function n(e){let{className:t,...r}=e;return(0,s.jsx)("div",{"data-slot":"skeleton",className:(0,a.cn)("animate-pulse rounded-md bg-accent",t),...r})}},83928:(e,t,r)=>{"use strict";r.d(t,{f:()=>s});let s=(0,r(25959).v)(e=>({connected:!1,projects:[],activeProjectId:null,overview:null,ledger:null,fileIndex:null,tasks:[],taskDefinitions:[],deadLetters:[],health:null,learningMemory:null,actionLog:[],bugs:[],wasteFlags:[],designImages:[],setConnected:t=>e({connected:t}),setProjects:(t,r)=>e({projects:t,activeProjectId:r}),setActiveProject:t=>e({activeProjectId:t,overview:null,ledger:null,fileIndex:null,tasks:[],taskDefinitions:[],deadLetters:[],health:null,learningMemory:null,actionLog:[],bugs:[],wasteFlags:[],designImages:[]}),setOverview:t=>e({overview:t}),setLedger:t=>{var r;return e({ledger:t,wasteFlags:null!=(r=t.wasteFlags)?r:[]})},setFileIndex:t=>e({fileIndex:t}),setScheduler:(t,r,s)=>e({tasks:t,taskDefinitions:r,deadLetters:s}),setHealth:t=>e({health:t}),setLearningMemory:t=>e({learningMemory:t}),setActionLog:t=>e({actionLog:t}),setBugs:t=>e({bugs:t}),setWasteFlags:t=>e({wasteFlags:t}),setDesignImages:t=>e({designImages:t})}))},84114:(e,t,r)=>{"use strict";r.d(t,{A:()=>s});let s=(0,r(70814).A)("scroll-text",[["path",{d:"M15 12h-5",key:"r7krc0"}],["path",{d:"M15 8h-5",key:"1khuty"}],["path",{d:"M19 17V5a2 2 0 0 0-2-2H4",key:"zz82l3"}],["path",{d:"M8 21h12a2 2 0 0 0 2-2v-1a1 1 0 0 0-1-1H11a1 1 0 0 0-1 1v1a2 2 0 1 1-4 0V5a2 2 0 1 0-4 0v2a1 1 0 0 0 1 1h3",key:"1ph1d7"}]])}},e=>{e.O(0,[160,212,441,255,358],()=>e(e.s=366)),_N_E=e.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[91],{5530:(e,t,s)=>{Promise.resolve().then(s.bind(s,36893))},7e3:(e,t,s)=>{"use strict";function n(e){return e>=1e6?(e/1e6).toFixed(1)+"M":e>=1e3?(e/1e3).toFixed(1)+"K":String(e)}function a(e){if(!e||e<=0)return"—";let t=Math.floor(e/1e3),s=Math.floor(t/60),n=Math.floor(s/60);return n>0?n+"h "+s%60+"m":s>0?s+"m "+t%60+"s":t+"s"}function r(e){if(!e)return"—";try{return new Date(e).toLocaleDateString()}catch(t){return e}}function l(e){if(!e)return"—";try{let t=new Date(e);return t.toLocaleDateString()+" "+t.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})}catch(t){return e}}s.d(t,{Y0:()=>a,Yq:()=>r,aT:()=>n,r6:()=>l})},25016:(e,t,s)=>{"use strict";s.d(t,{cn:()=>r});var n=s(2821),a=s(75889);function r(){for(var e=arguments.length,t=Array(e),s=0;s<e;s++)t[s]=arguments[s];return(0,a.QP)((0,n.$)(t))}},36893:(e,t,s)=>{"use strict";s.r(t),s.d(t,{default:()=>o});var n=s(95155),a=s(83928),r=s(83209),l=s(68122),i=s(7e3),d=s(50906);function c(){var e;let t=(0,a.f)(e=>e.ledger);if(!t)return(0,n.jsxs)("div",{className:"space-y-4",children:[(0,n.jsx)(l.E,{className:"h-8 w-48"}),Array.from({length:5}).map((e,t)=>(0,n.jsx)(l.E,{className:"h-20"},t))]});let s=null!=(e=t.sessions)?e:[],c=[...s].reverse();return(0,n.jsxs)("div",{className:"space-y-4",children:[(0,n.jsxs)("div",{className:"flex items-center gap-4",children:[(0,n.jsxs)("div",{className:"flex items-center gap-2",children:[(0,n.jsx)(d.A,{className:"h-4 w-4 text-muted-foreground"}),(0,n.jsxs)("span",{className:"text-sm text-muted-foreground",children:[s.length," sessions"]})]}),s.length>0&&(0,n.jsxs)("span",{className:"text-sm text-muted-foreground",children:["Latest: ",(0,i.Yq)(s[s.length-1].startTimestamp)]})]}),0===c.length?(0,n.jsx)(r.Zp,{children:(0,n.jsx)(r.Wu,{className:"py-8",children:(0,n.jsx)("p",{className:"text-sm text-muted-foreground text-center",children:"No sessions recorded yet"})})}):(0,n.jsx)("div",{className:"space-y-2",children:c.map(e=>{var t,s,a,l,d,c,o;let u=null!=(l=null==(t=e.totals)?void 0:t.readCount)?l:0,m=null!=(d=null==(s=e.totals)?void 0:s.writeCount)?d:0,g=null!=(c=null==(a=e.totals)?void 0:a.estimatedTokens)?c:0,x=null!=(o=e.estimatedSavings)?o:0;return(0,n.jsx)(r.Zp,{children:(0,n.jsxs)(r.Wu,{className:"py-3 px-4",children:[(0,n.jsxs)("div",{className:"flex items-center justify-between",children:[(0,n.jsxs)("div",{children:[(0,n.jsx)("span",{className:"text-sm font-medium",children:(0,i.r6)(e.startTimestamp)}),(0,n.jsxs)("span",{className:"text-xs text-muted-foreground ml-2",children:["→"," ",e.endTimestamp?(0,i.r6)(e.endTimestamp):"ongoing"]})]}),(0,n.jsxs)("span",{className:"text-xs font-medium text-primary",children:[(0,i.aT)(g)," tokens"]})]}),(0,n.jsxs)("p",{className:"text-xs text-muted-foreground mt-1",children:[u," reads ","\xb7"," ",m," writes ","\xb7"," ",(0,i.aT)(x)," saved"]})]})},e.sessionId)})})]})}function o(){return(0,n.jsx)(c,{})}},50906:(e,t,s)=>{"use strict";s.d(t,{A:()=>n});let n=(0,s(70814).A)("activity",[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]])},68122:(e,t,s)=>{"use strict";s.d(t,{E:()=>r});var n=s(95155),a=s(25016);function r(e){let{className:t,...s}=e;return(0,n.jsx)("div",{"data-slot":"skeleton",className:(0,a.cn)("animate-pulse rounded-md bg-accent",t),...s})}},83209:(e,t,s)=>{"use strict";s.d(t,{Wu:()=>d,ZB:()=>i,Zp:()=>r,aR:()=>l});var n=s(95155);s(12115);var a=s(25016);function r(e){let{className:t,...s}=e;return(0,n.jsx)("div",{"data-slot":"card",className:(0,a.cn)("flex flex-col gap-6 rounded-xl border bg-card py-6 text-card-foreground shadow-sm",t),...s})}function l(e){let{className:t,...s}=e;return(0,n.jsx)("div",{"data-slot":"card-header",className:(0,a.cn)("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",t),...s})}function i(e){let{className:t,...s}=e;return(0,n.jsx)("div",{"data-slot":"card-title",className:(0,a.cn)("leading-none font-semibold",t),...s})}function d(e){let{className:t,...s}=e;return(0,n.jsx)("div",{"data-slot":"card-content",className:(0,a.cn)("px-6",t),...s})}},83928:(e,t,s)=>{"use strict";s.d(t,{f:()=>n});let n=(0,s(25959).v)(e=>({connected:!1,projects:[],activeProjectId:null,overview:null,ledger:null,fileIndex:null,tasks:[],taskDefinitions:[],deadLetters:[],health:null,learningMemory:null,actionLog:[],bugs:[],wasteFlags:[],designImages:[],setConnected:t=>e({connected:t}),setProjects:(t,s)=>e({projects:t,activeProjectId:s}),setActiveProject:t=>e({activeProjectId:t,overview:null,ledger:null,fileIndex:null,tasks:[],taskDefinitions:[],deadLetters:[],health:null,learningMemory:null,actionLog:[],bugs:[],wasteFlags:[],designImages:[]}),setOverview:t=>e({overview:t}),setLedger:t=>{var s;return e({ledger:t,wasteFlags:null!=(s=t.wasteFlags)?s:[]})},setFileIndex:t=>e({fileIndex:t}),setScheduler:(t,s,n)=>e({tasks:t,taskDefinitions:s,deadLetters:n}),setHealth:t=>e({health:t}),setLearningMemory:t=>e({learningMemory:t}),setActionLog:t=>e({actionLog:t}),setBugs:t=>e({bugs:t}),setWasteFlags:t=>e({wasteFlags:t}),setDesignImages:t=>e({designImages:t})}))}},e=>{e.O(0,[160,441,255,358],()=>e(e.s=5530)),_N_E=e.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[273],{1008:(e,t,r)=>{Promise.resolve().then(r.bind(r,58032))},7e3:(e,t,r)=>{"use strict";function s(e){return e>=1e6?(e/1e6).toFixed(1)+"M":e>=1e3?(e/1e3).toFixed(1)+"K":String(e)}function a(e){if(!e||e<=0)return"—";let t=Math.floor(e/1e3),r=Math.floor(t/60),s=Math.floor(r/60);return s>0?s+"h "+r%60+"m":r>0?r+"m "+t%60+"s":t+"s"}function n(e){if(!e)return"—";try{return new Date(e).toLocaleDateString()}catch(t){return e}}function i(e){if(!e)return"—";try{let t=new Date(e);return t.toLocaleDateString()+" "+t.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})}catch(t){return e}}r.d(t,{Y0:()=>a,Yq:()=>n,aT:()=>s,r6:()=>i})},25016:(e,t,r)=>{"use strict";r.d(t,{cn:()=>n});var s=r(2821),a=r(75889);function n(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return(0,a.QP)((0,s.$)(t))}},33789:(e,t,r)=>{"use strict";r.d(t,{p:()=>n});var s=r(95155);r(12115);var a=r(25016);function n(e){let{className:t,type:r,...n}=e;return(0,s.jsx)("input",{type:r,"data-slot":"input",className:(0,a.cn)("h-9 w-full min-w-0 rounded-md border border-input bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none selection:bg-primary selection:text-primary-foreground file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm dark:bg-input/30","focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50","aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40",t),...n})}},46927:(e,t,r)=>{"use strict";r.d(t,{A:()=>s});let s=(0,r(70814).A)("bug",[["path",{d:"M12 20v-9",key:"1qisl0"}],["path",{d:"M14 7a4 4 0 0 1 4 4v3a6 6 0 0 1-12 0v-3a4 4 0 0 1 4-4z",key:"uouzyp"}],["path",{d:"M14.12 3.88 16 2",key:"qol33r"}],["path",{d:"M21 21a4 4 0 0 0-3.81-4",key:"1b0z45"}],["path",{d:"M21 5a4 4 0 0 1-3.55 3.97",key:"5cxbf6"}],["path",{d:"M22 13h-4",key:"1jl80f"}],["path",{d:"M3 21a4 4 0 0 1 3.81-4",key:"1fjd4g"}],["path",{d:"M3 5a4 4 0 0 0 3.55 3.97",key:"1d7oge"}],["path",{d:"M6 13H2",key:"82j7cp"}],["path",{d:"m8 2 1.88 1.88",key:"fmnt4t"}],["path",{d:"M9 7.13V6a3 3 0 1 1 6 0v1.13",key:"1vgav8"}]])},51539:(e,t,r)=>{"use strict";r.d(t,{$m:()=>o,As:()=>d,nD:()=>l,ub:()=>c});var s=r(95155);r(12115);var a=r(24033),n=r(16083),i=r(25016);function l(e){let{...t}=e;return(0,s.jsx)(n.bL,{"data-slot":"accordion",...t})}function d(e){let{className:t,...r}=e;return(0,s.jsx)(n.q7,{"data-slot":"accordion-item",className:(0,i.cn)("border-b last:border-b-0",t),...r})}function o(e){let{className:t,children:r,...l}=e;return(0,s.jsx)(n.Y9,{className:"flex",children:(0,s.jsxs)(n.l9,{"data-slot":"accordion-trigger",className:(0,i.cn)("flex flex-1 items-start justify-between gap-4 rounded-md py-4 text-left text-sm font-medium transition-all outline-none hover:underline focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:opacity-50 [&[data-state=open]>svg]:rotate-180",t),...l,children:[r,(0,s.jsx)(a.A,{className:"pointer-events-none size-4 shrink-0 translate-y-0.5 text-muted-foreground transition-transform duration-200"})]})})}function c(e){let{className:t,children:r,...a}=e;return(0,s.jsx)(n.UC,{"data-slot":"accordion-content",className:"overflow-hidden text-sm data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down",...a,children:(0,s.jsx)("div",{className:(0,i.cn)("pt-0 pb-4",t),children:r})})}},58032:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>f});var s=r(95155),a=r(12115),n=r(83928),i=r(83209),l=r(51539),d=r(67812),o=r(33789),c=r(46927),u=r(86651),x=r(7e3);function g(){let e=(0,n.f)(e=>e.bugs),[t,r]=(0,a.useState)(""),[g,f]=(0,a.useState)(""),m=(0,a.useMemo)(()=>{let t=new Set;for(let r of e)for(let e of r.tags)t.add(e);return Array.from(t).sort()},[e]),h=(0,a.useCallback)(e=>[e.errorMessage,e.rootCause,e.fixDescription,e.filePath,...e.tags],[]),v=(0,a.useMemo)(()=>{let r=e;if(g&&(r=r.filter(e=>e.tags.includes(g))),t.trim()){let e=t.toLowerCase();r=r.filter(t=>h(t).some(t=>t.toLowerCase().includes(e)))}return r},[e,t,g,h]),p=e.reduce((e,t)=>e+t.occurrenceCount,0);return(0,s.jsxs)("div",{className:"space-y-4",children:[(0,s.jsxs)("div",{className:"flex flex-wrap items-center gap-4 text-sm",children:[(0,s.jsxs)("div",{className:"flex items-center gap-1",children:[(0,s.jsx)(c.A,{className:"h-4 w-4 text-muted-foreground"}),(0,s.jsx)("span",{className:"text-muted-foreground",children:"Bugs:"}),(0,s.jsx)("span",{className:"font-medium",children:e.length})]}),(0,s.jsxs)("div",{children:[(0,s.jsx)("span",{className:"text-muted-foreground",children:"Total Occurrences:"})," ",(0,s.jsx)("span",{className:"font-medium",children:p})]})]}),(0,s.jsxs)("div",{className:"flex gap-2",children:[(0,s.jsxs)("div",{className:"relative flex-1",children:[(0,s.jsx)(u.A,{className:"absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-muted-foreground"}),(0,s.jsx)(o.p,{placeholder:"Search bugs...",value:t,onChange:e=>r(e.target.value),className:"pl-9"})]}),m.length>0&&(0,s.jsxs)("select",{value:g,onChange:e=>f(e.target.value),className:"rounded-md border border-input bg-background px-3 py-2 text-sm",children:[(0,s.jsx)("option",{value:"",children:"All tags"}),m.map(e=>(0,s.jsx)("option",{value:e,children:e},e))]})]}),0===v.length?(0,s.jsx)(i.Zp,{children:(0,s.jsx)(i.Wu,{className:"py-8",children:(0,s.jsx)("p",{className:"text-sm text-muted-foreground text-center",children:0===e.length?"No bugs recorded":"No matching bugs"})})}):(0,s.jsx)(l.nD,{type:"multiple",children:v.map(e=>(0,s.jsxs)(l.As,{value:e.id,children:[(0,s.jsx)(l.$m,{className:"text-sm text-left",children:(0,s.jsxs)("div",{className:"flex flex-1 items-start justify-between pr-2",children:[(0,s.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,s.jsx)("p",{className:"font-medium truncate",children:e.errorMessage}),(0,s.jsxs)("p",{className:"text-xs text-muted-foreground font-mono truncate",children:[e.filePath,null!=e.lineNumber&&":".concat(e.lineNumber)]})]}),(0,s.jsxs)("div",{className:"ml-2 flex shrink-0 items-center gap-1",children:[(0,s.jsxs)(d.E,{variant:"outline",className:"text-[10px]",children:[e.occurrenceCount,"x"]}),e.tags.map(e=>(0,s.jsx)(d.E,{variant:"secondary",className:"text-[10px]",children:e},e))]})]})}),(0,s.jsx)(l.ub,{children:(0,s.jsxs)("div",{className:"space-y-2 text-sm",children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("span",{className:"font-medium text-muted-foreground",children:"Root Cause:"})," ",e.rootCause]}),(0,s.jsxs)("div",{children:[(0,s.jsx)("span",{className:"font-medium text-muted-foreground",children:"Fix:"})," ",e.fixDescription]}),(0,s.jsxs)("div",{className:"flex gap-4 text-xs text-muted-foreground",children:[(0,s.jsxs)("span",{children:["Created: ",(0,x.r6)(e.createdAt)]}),(0,s.jsxs)("span",{children:["Last Seen: ",(0,x.r6)(e.lastSeenAt)]})]}),e.relatedBugIds.length>0&&(0,s.jsxs)("div",{className:"text-xs text-muted-foreground",children:["Related: ",e.relatedBugIds.join(", ")]})]})})]},e.id))})]})}function f(){return(0,s.jsx)(g,{})}},67812:(e,t,r)=>{"use strict";r.d(t,{E:()=>d});var s=r(95155);r(12115);var a=r(83101),n=r(32467),i=r(25016);let l=(0,a.F)("inline-flex w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-full border border-transparent px-2 py-0.5 text-xs font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3",{variants:{variant:{default:"bg-primary text-primary-foreground [a&]:hover:bg-primary/90",secondary:"bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",destructive:"bg-destructive text-white focus-visible:ring-destructive/20 dark:bg-destructive/60 dark:focus-visible:ring-destructive/40 [a&]:hover:bg-destructive/90",outline:"border-border text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground",ghost:"[a&]:hover:bg-accent [a&]:hover:text-accent-foreground",link:"text-primary underline-offset-4 [a&]:hover:underline"}},defaultVariants:{variant:"default"}});function d(e){let{className:t,variant:r="default",asChild:a=!1,...d}=e,o=a?n.bL:"span";return(0,s.jsx)(o,{"data-slot":"badge","data-variant":r,className:(0,i.cn)(l({variant:r}),t),...d})}},83209:(e,t,r)=>{"use strict";r.d(t,{Wu:()=>d,ZB:()=>l,Zp:()=>n,aR:()=>i});var s=r(95155);r(12115);var a=r(25016);function n(e){let{className:t,...r}=e;return(0,s.jsx)("div",{"data-slot":"card",className:(0,a.cn)("flex flex-col gap-6 rounded-xl border bg-card py-6 text-card-foreground shadow-sm",t),...r})}function i(e){let{className:t,...r}=e;return(0,s.jsx)("div",{"data-slot":"card-header",className:(0,a.cn)("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",t),...r})}function l(e){let{className:t,...r}=e;return(0,s.jsx)("div",{"data-slot":"card-title",className:(0,a.cn)("leading-none font-semibold",t),...r})}function d(e){let{className:t,...r}=e;return(0,s.jsx)("div",{"data-slot":"card-content",className:(0,a.cn)("px-6",t),...r})}},83928:(e,t,r)=>{"use strict";r.d(t,{f:()=>s});let s=(0,r(25959).v)(e=>({connected:!1,projects:[],activeProjectId:null,overview:null,ledger:null,fileIndex:null,tasks:[],taskDefinitions:[],deadLetters:[],health:null,learningMemory:null,actionLog:[],bugs:[],wasteFlags:[],designImages:[],setConnected:t=>e({connected:t}),setProjects:(t,r)=>e({projects:t,activeProjectId:r}),setActiveProject:t=>e({activeProjectId:t,overview:null,ledger:null,fileIndex:null,tasks:[],taskDefinitions:[],deadLetters:[],health:null,learningMemory:null,actionLog:[],bugs:[],wasteFlags:[],designImages:[]}),setOverview:t=>e({overview:t}),setLedger:t=>{var r;return e({ledger:t,wasteFlags:null!=(r=t.wasteFlags)?r:[]})},setFileIndex:t=>e({fileIndex:t}),setScheduler:(t,r,s)=>e({tasks:t,taskDefinitions:r,deadLetters:s}),setHealth:t=>e({health:t}),setLearningMemory:t=>e({learningMemory:t}),setActionLog:t=>e({actionLog:t}),setBugs:t=>e({bugs:t}),setWasteFlags:t=>e({wasteFlags:t}),setDesignImages:t=>e({designImages:t})}))},86651:(e,t,r)=>{"use strict";r.d(t,{A:()=>s});let s=(0,r(70814).A)("search",[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]])}},e=>{e.O(0,[160,717,83,441,255,358],()=>e(e.s=1008)),_N_E=e.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[116],{7e3:(e,t,s)=>{"use strict";function a(e){return e>=1e6?(e/1e6).toFixed(1)+"M":e>=1e3?(e/1e3).toFixed(1)+"K":String(e)}function r(e){if(!e||e<=0)return"—";let t=Math.floor(e/1e3),s=Math.floor(t/60),a=Math.floor(s/60);return a>0?a+"h "+s%60+"m":s>0?s+"m "+t%60+"s":t+"s"}function n(e){if(!e)return"—";try{return new Date(e).toLocaleDateString()}catch(t){return e}}function i(e){if(!e)return"—";try{let t=new Date(e);return t.toLocaleDateString()+" "+t.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})}catch(t){return e}}s.d(t,{Y0:()=>r,Yq:()=>n,aT:()=>a,r6:()=>i})},25016:(e,t,s)=>{"use strict";s.d(t,{cn:()=>n});var a=s(2821),r=s(75889);function n(){for(var e=arguments.length,t=Array(e),s=0;s<e;s++)t[s]=arguments[s];return(0,r.QP)((0,a.$)(t))}},35382:(e,t,s)=>{"use strict";s.r(t),s.d(t,{default:()=>j});var a=s(95155),r=s(12115),n=s(83928),i=s(83209),o=s(67812),d=s(65229),l=s(89511),c=s(25016);function u(e){let{...t}=e;return(0,a.jsx)(l.bL,{"data-slot":"dialog",...t})}function g(e){let{...t}=e;return(0,a.jsx)(l.ZL,{"data-slot":"dialog-portal",...t})}function v(e){let{className:t,...s}=e;return(0,a.jsx)(l.hJ,{"data-slot":"dialog-overlay",className:(0,c.cn)("fixed inset-0 z-50 bg-black/50 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:animate-in data-[state=open]:fade-in-0",t),...s})}function x(e){let{className:t,children:s,showCloseButton:r=!0,...n}=e;return(0,a.jsxs)(g,{"data-slot":"dialog-portal",children:[(0,a.jsx)(v,{}),(0,a.jsxs)(l.UC,{"data-slot":"dialog-content",className:(0,c.cn)("fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border bg-background p-6 shadow-lg duration-200 outline-none data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95 sm:max-w-lg",t),...n,children:[s,r&&(0,a.jsxs)(l.bm,{"data-slot":"dialog-close",className:"absolute top-4 right-4 rounded-xs opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:ring-2 focus:ring-ring focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",children:[(0,a.jsx)(d.A,{}),(0,a.jsx)("span",{className:"sr-only",children:"Close"})]})]})]})}function m(e){let{className:t,...s}=e;return(0,a.jsx)(l.hE,{"data-slot":"dialog-title",className:(0,c.cn)("text-lg leading-none font-semibold",t),...s})}s(97003);var f=s(68122),h=s(7e3),p=s(42196);function b(){let e=(0,n.f)(e=>e.designImages),t=(0,n.f)(e=>e.connected),[s,d]=(0,r.useState)(null);return t||0!==e.length?0===e.length?(0,a.jsx)(i.Zp,{children:(0,a.jsx)(i.Wu,{className:"py-8",children:(0,a.jsxs)("div",{className:"text-center",children:[(0,a.jsx)(p.A,{className:"h-8 w-8 text-muted-foreground mx-auto mb-2"}),(0,a.jsx)("p",{className:"text-sm text-muted-foreground",children:"No design captures yet. Run: mink designqc"})]})})}):(0,a.jsxs)("div",{className:"space-y-4",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)(p.A,{className:"h-4 w-4 text-muted-foreground"}),(0,a.jsxs)("span",{className:"text-sm text-muted-foreground",children:[e.length," captures"]})]}),(0,a.jsx)("div",{className:"grid gap-4 sm:grid-cols-2 lg:grid-cols-3",children:e.map((e,t)=>(0,a.jsxs)(i.Zp,{className:"cursor-pointer overflow-hidden transition-shadow hover:shadow-lg",onClick:()=>d(e),children:[(0,a.jsx)("div",{className:"aspect-video bg-muted relative",children:(0,a.jsx)("img",{src:e.url,alt:"".concat(e.route," - ").concat(e.viewport),className:"h-full w-full object-cover",loading:"lazy"})}),(0,a.jsxs)(i.Wu,{className:"py-2 px-3",children:[(0,a.jsxs)("div",{className:"flex items-center justify-between",children:[(0,a.jsx)("span",{className:"text-xs font-mono truncate",children:e.route}),(0,a.jsx)(o.E,{variant:"outline",className:"text-[10px]",children:e.viewport})]}),(0,a.jsx)("p",{className:"text-[10px] text-muted-foreground mt-1",children:(0,h.r6)(e.timestamp)})]})]},t))}),(0,a.jsx)(u,{open:null!==s,onOpenChange:e=>!e&&d(null),children:(0,a.jsxs)(x,{className:"max-w-4xl",children:[(0,a.jsx)(m,{className:"sr-only",children:"Design Capture"}),s&&(0,a.jsxs)("div",{children:[(0,a.jsx)("img",{src:s.url,alt:"".concat(s.route," - ").concat(s.viewport),className:"w-full rounded-md"}),(0,a.jsxs)("div",{className:"flex items-center justify-between mt-3",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("span",{className:"text-sm font-mono",children:s.route}),(0,a.jsx)(o.E,{variant:"outline",className:"ml-2 text-[10px]",children:s.viewport}),(0,a.jsxs)(o.E,{variant:"secondary",className:"ml-1 text-[10px]",children:["Section ",s.section]})]}),(0,a.jsx)("span",{className:"text-xs text-muted-foreground",children:(0,h.r6)(s.timestamp)})]})]})]})})]}):(0,a.jsxs)("div",{className:"space-y-4",children:[(0,a.jsx)(f.E,{className:"h-8 w-48"}),(0,a.jsx)("div",{className:"grid gap-4 sm:grid-cols-2 lg:grid-cols-3",children:Array.from({length:3}).map((e,t)=>(0,a.jsx)(f.E,{className:"h-48"},t))})]})}function j(){return(0,a.jsx)(b,{})}},64987:(e,t,s)=>{Promise.resolve().then(s.bind(s,35382))},67812:(e,t,s)=>{"use strict";s.d(t,{E:()=>d});var a=s(95155);s(12115);var r=s(83101),n=s(32467),i=s(25016);let o=(0,r.F)("inline-flex w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-full border border-transparent px-2 py-0.5 text-xs font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3",{variants:{variant:{default:"bg-primary text-primary-foreground [a&]:hover:bg-primary/90",secondary:"bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",destructive:"bg-destructive text-white focus-visible:ring-destructive/20 dark:bg-destructive/60 dark:focus-visible:ring-destructive/40 [a&]:hover:bg-destructive/90",outline:"border-border text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground",ghost:"[a&]:hover:bg-accent [a&]:hover:text-accent-foreground",link:"text-primary underline-offset-4 [a&]:hover:underline"}},defaultVariants:{variant:"default"}});function d(e){let{className:t,variant:s="default",asChild:r=!1,...d}=e,l=r?n.bL:"span";return(0,a.jsx)(l,{"data-slot":"badge","data-variant":s,className:(0,i.cn)(o({variant:s}),t),...d})}},68122:(e,t,s)=>{"use strict";s.d(t,{E:()=>n});var a=s(95155),r=s(25016);function n(e){let{className:t,...s}=e;return(0,a.jsx)("div",{"data-slot":"skeleton",className:(0,r.cn)("animate-pulse rounded-md bg-accent",t),...s})}},83209:(e,t,s)=>{"use strict";s.d(t,{Wu:()=>d,ZB:()=>o,Zp:()=>n,aR:()=>i});var a=s(95155);s(12115);var r=s(25016);function n(e){let{className:t,...s}=e;return(0,a.jsx)("div",{"data-slot":"card",className:(0,r.cn)("flex flex-col gap-6 rounded-xl border bg-card py-6 text-card-foreground shadow-sm",t),...s})}function i(e){let{className:t,...s}=e;return(0,a.jsx)("div",{"data-slot":"card-header",className:(0,r.cn)("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",t),...s})}function o(e){let{className:t,...s}=e;return(0,a.jsx)("div",{"data-slot":"card-title",className:(0,r.cn)("leading-none font-semibold",t),...s})}function d(e){let{className:t,...s}=e;return(0,a.jsx)("div",{"data-slot":"card-content",className:(0,r.cn)("px-6",t),...s})}},83928:(e,t,s)=>{"use strict";s.d(t,{f:()=>a});let a=(0,s(25959).v)(e=>({connected:!1,projects:[],activeProjectId:null,overview:null,ledger:null,fileIndex:null,tasks:[],taskDefinitions:[],deadLetters:[],health:null,learningMemory:null,actionLog:[],bugs:[],wasteFlags:[],designImages:[],setConnected:t=>e({connected:t}),setProjects:(t,s)=>e({projects:t,activeProjectId:s}),setActiveProject:t=>e({activeProjectId:t,overview:null,ledger:null,fileIndex:null,tasks:[],taskDefinitions:[],deadLetters:[],health:null,learningMemory:null,actionLog:[],bugs:[],wasteFlags:[],designImages:[]}),setOverview:t=>e({overview:t}),setLedger:t=>{var s;return e({ledger:t,wasteFlags:null!=(s=t.wasteFlags)?s:[]})},setFileIndex:t=>e({fileIndex:t}),setScheduler:(t,s,a)=>e({tasks:t,taskDefinitions:s,deadLetters:a}),setHealth:t=>e({health:t}),setLearningMemory:t=>e({learningMemory:t}),setActionLog:t=>e({actionLog:t}),setBugs:t=>e({bugs:t}),setWasteFlags:t=>e({wasteFlags:t}),setDesignImages:t=>e({designImages:t})}))},97003:(e,t,s)=>{"use strict";s.d(t,{$:()=>d});var a=s(95155);s(12115);var r=s(83101),n=s(32467),i=s(25016);let o=(0,r.F)("inline-flex shrink-0 items-center justify-center gap-2 rounded-md text-sm font-medium whitespace-nowrap transition-all outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:bg-destructive/60 dark:focus-visible:ring-destructive/40",outline:"border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:border-input dark:bg-input/30 dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2 has-[>svg]:px-3",xs:"h-6 gap-1 rounded-md px-2 text-xs has-[>svg]:px-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-8 gap-1.5 rounded-md px-3 has-[>svg]:px-2.5",lg:"h-10 rounded-md px-6 has-[>svg]:px-4",icon:"size-9","icon-xs":"size-6 rounded-md [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-8","icon-lg":"size-10"}},defaultVariants:{variant:"default",size:"default"}});function d(e){let{className:t,variant:s="default",size:r="default",asChild:d=!1,...l}=e,c=d?n.bL:"button";return(0,a.jsx)(c,{"data-slot":"button","data-variant":s,"data-size":r,className:(0,i.cn)(o({variant:s,size:r,className:t})),...l})}}},e=>{e.O(0,[160,692,55,441,255,358],()=>e(e.s=64987)),_N_E=e.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[837],{7e3:(e,t,r)=>{"use strict";function s(e){return e>=1e6?(e/1e6).toFixed(1)+"M":e>=1e3?(e/1e3).toFixed(1)+"K":String(e)}function i(e){if(!e||e<=0)return"—";let t=Math.floor(e/1e3),r=Math.floor(t/60),s=Math.floor(r/60);return s>0?s+"h "+r%60+"m":r>0?r+"m "+t%60+"s":t+"s"}function a(e){if(!e)return"—";try{return new Date(e).toLocaleDateString()}catch(t){return e}}function n(e){if(!e)return"—";try{let t=new Date(e);return t.toLocaleDateString()+" "+t.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})}catch(t){return e}}r.d(t,{Y0:()=>i,Yq:()=>a,aT:()=>s,r6:()=>n})},13512:(e,t,r)=>{Promise.resolve().then(r.bind(r,49691))},25016:(e,t,r)=>{"use strict";r.d(t,{cn:()=>a});var s=r(2821),i=r(75889);function a(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return(0,i.QP)((0,s.$)(t))}},33789:(e,t,r)=>{"use strict";r.d(t,{p:()=>a});var s=r(95155);r(12115);var i=r(25016);function a(e){let{className:t,type:r,...a}=e;return(0,s.jsx)("input",{type:r,"data-slot":"input",className:(0,i.cn)("h-9 w-full min-w-0 rounded-md border border-input bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none selection:bg-primary selection:text-primary-foreground file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm dark:bg-input/30","focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50","aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40",t),...a})}},49691:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>g});var s=r(95155),i=r(12115),a=r(46074),n=r(83928),l=r(67812),o=r(33789),d=r(68122),c=r(7e3),u=r(58734),f=r(86651);function m(){var e;let t=(0,n.f)(e=>e.fileIndex),[r,m]=(0,i.useState)(""),[g,x]=(0,i.useState)(""),v=(0,i.useRef)(null),h=(0,i.useCallback)(e=>[e.filePath,e.description],[]),p=null!=(e=null==t?void 0:t.entries)?e:[],b=(0,i.useMemo)(()=>{let e=new Set;for(let t of p){let r=t.filePath.split("/");r.length>1&&e.add(r.slice(0,-1).join("/"))}return Array.from(e).sort()},[p]),j=(0,i.useMemo)(()=>{let e=p;if(g&&(e=e.filter(e=>e.filePath.startsWith(g+"/")||e.filePath.startsWith(g))),r.trim()){let t=r.toLowerCase();e=e.filter(e=>h(e).some(e=>e.toLowerCase().includes(t)))}return e},[p,r,g,h]),w=(0,a.Te)({count:j.length,getScrollElement:()=>v.current,estimateSize:()=>72,overscan:10});if(!t)return(0,s.jsxs)("div",{className:"space-y-4",children:[(0,s.jsx)(d.E,{className:"h-10"}),(0,s.jsx)(d.E,{className:"h-96"})]});let y=t.header,N=y.lifetimeHits+y.lifetimeMisses>0?(y.lifetimeHits/(y.lifetimeHits+y.lifetimeMisses)*100).toFixed(1):"—";return(0,s.jsxs)("div",{className:"space-y-4",children:[(0,s.jsxs)("div",{className:"flex flex-wrap gap-4 text-sm",children:[(0,s.jsxs)("div",{className:"flex items-center gap-1",children:[(0,s.jsx)(u.A,{className:"h-4 w-4 text-muted-foreground"}),(0,s.jsx)("span",{className:"text-muted-foreground",children:"Indexed:"}),(0,s.jsx)("span",{className:"font-medium",children:(0,c.aT)(y.totalFiles)})]}),(0,s.jsxs)("div",{children:[(0,s.jsx)("span",{className:"text-muted-foreground",children:"Last Scan:"})," ",(0,s.jsx)("span",{className:"font-medium",children:(0,c.r6)(y.lastScanTimestamp)})]}),(0,s.jsxs)("div",{children:[(0,s.jsx)("span",{className:"text-muted-foreground",children:"Hit Ratio:"})," ",(0,s.jsxs)("span",{className:"font-medium",children:[N,"%"]})]})]}),(0,s.jsxs)("div",{className:"flex gap-2",children:[(0,s.jsxs)("div",{className:"relative flex-1",children:[(0,s.jsx)(f.A,{className:"absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-muted-foreground"}),(0,s.jsx)(o.p,{placeholder:"Search files...",value:r,onChange:e=>m(e.target.value),className:"pl-9"})]}),(0,s.jsxs)("select",{value:g,onChange:e=>x(e.target.value),className:"rounded-md border border-input bg-background px-3 py-2 text-sm",children:[(0,s.jsx)("option",{value:"",children:"All directories"}),b.map(e=>(0,s.jsx)("option",{value:e,children:e},e))]})]}),(0,s.jsxs)("p",{className:"text-xs text-muted-foreground",children:[j.length," files"]}),(0,s.jsx)("div",{ref:v,className:"h-[500px] overflow-auto rounded-md border",children:(0,s.jsx)("div",{style:{height:"".concat(w.getTotalSize(),"px"),width:"100%",position:"relative"},children:w.getVirtualItems().map(e=>{let t=j[e.index];return(0,s.jsxs)("div",{style:{position:"absolute",top:0,left:0,width:"100%",height:"".concat(e.size,"px"),transform:"translateY(".concat(e.start,"px)")},className:"flex items-center justify-between border-b px-4 py-2",children:[(0,s.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,s.jsx)("p",{className:"text-sm font-mono truncate",children:t.filePath}),(0,s.jsx)("p",{className:"text-xs text-muted-foreground truncate",children:t.description})]}),(0,s.jsx)("div",{className:"ml-4 shrink-0 text-right",children:(0,s.jsxs)(l.E,{variant:"outline",className:"text-[10px]",children:["~",(0,c.aT)(t.estimatedTokens)," tok"]})})]},e.key)})})})]})}function g(){return(0,s.jsx)(m,{})}},58734:(e,t,r)=>{"use strict";r.d(t,{A:()=>s});let s=(0,r(70814).A)("folder-open",[["path",{d:"m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2",key:"usdka0"}]])},67812:(e,t,r)=>{"use strict";r.d(t,{E:()=>o});var s=r(95155);r(12115);var i=r(83101),a=r(32467),n=r(25016);let l=(0,i.F)("inline-flex w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-full border border-transparent px-2 py-0.5 text-xs font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3",{variants:{variant:{default:"bg-primary text-primary-foreground [a&]:hover:bg-primary/90",secondary:"bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",destructive:"bg-destructive text-white focus-visible:ring-destructive/20 dark:bg-destructive/60 dark:focus-visible:ring-destructive/40 [a&]:hover:bg-destructive/90",outline:"border-border text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground",ghost:"[a&]:hover:bg-accent [a&]:hover:text-accent-foreground",link:"text-primary underline-offset-4 [a&]:hover:underline"}},defaultVariants:{variant:"default"}});function o(e){let{className:t,variant:r="default",asChild:i=!1,...o}=e,d=i?a.bL:"span";return(0,s.jsx)(d,{"data-slot":"badge","data-variant":r,className:(0,n.cn)(l({variant:r}),t),...o})}},68122:(e,t,r)=>{"use strict";r.d(t,{E:()=>a});var s=r(95155),i=r(25016);function a(e){let{className:t,...r}=e;return(0,s.jsx)("div",{"data-slot":"skeleton",className:(0,i.cn)("animate-pulse rounded-md bg-accent",t),...r})}},83928:(e,t,r)=>{"use strict";r.d(t,{f:()=>s});let s=(0,r(25959).v)(e=>({connected:!1,projects:[],activeProjectId:null,overview:null,ledger:null,fileIndex:null,tasks:[],taskDefinitions:[],deadLetters:[],health:null,learningMemory:null,actionLog:[],bugs:[],wasteFlags:[],designImages:[],setConnected:t=>e({connected:t}),setProjects:(t,r)=>e({projects:t,activeProjectId:r}),setActiveProject:t=>e({activeProjectId:t,overview:null,ledger:null,fileIndex:null,tasks:[],taskDefinitions:[],deadLetters:[],health:null,learningMemory:null,actionLog:[],bugs:[],wasteFlags:[],designImages:[]}),setOverview:t=>e({overview:t}),setLedger:t=>{var r;return e({ledger:t,wasteFlags:null!=(r=t.wasteFlags)?r:[]})},setFileIndex:t=>e({fileIndex:t}),setScheduler:(t,r,s)=>e({tasks:t,taskDefinitions:r,deadLetters:s}),setHealth:t=>e({health:t}),setLearningMemory:t=>e({learningMemory:t}),setActionLog:t=>e({actionLog:t}),setBugs:t=>e({bugs:t}),setWasteFlags:t=>e({wasteFlags:t}),setDesignImages:t=>e({designImages:t})}))}},e=>{e.O(0,[160,212,441,255,358],()=>e(e.s=13512)),_N_E=e.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[171],{7e3:(e,t,r)=>{"use strict";function n(e){return e>=1e6?(e/1e6).toFixed(1)+"M":e>=1e3?(e/1e3).toFixed(1)+"K":String(e)}function s(e){if(!e||e<=0)return"—";let t=Math.floor(e/1e3),r=Math.floor(t/60),n=Math.floor(r/60);return n>0?n+"h "+r%60+"m":r>0?r+"m "+t%60+"s":t+"s"}function a(e){if(!e)return"—";try{return new Date(e).toLocaleDateString()}catch(t){return e}}function l(e){if(!e)return"—";try{let t=new Date(e);return t.toLocaleDateString()+" "+t.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})}catch(t){return e}}r.d(t,{Y0:()=>s,Yq:()=>a,aT:()=>n,r6:()=>l})},17666:(e,t,r)=>{"use strict";r.d(t,{A:()=>n});let n=(0,r(70814).A)("lightbulb",[["path",{d:"M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A6 6 0 0 0 6 8c0 1 .2 2.2 1.5 3.5.7.7 1.3 1.5 1.5 2.5",key:"1gvzjb"}],["path",{d:"M9 18h6",key:"x1upvd"}],["path",{d:"M10 22h4",key:"ceow96"}]])},25016:(e,t,r)=>{"use strict";r.d(t,{cn:()=>a});var n=r(2821),s=r(75889);function a(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return(0,s.QP)((0,n.$)(t))}},28022:(e,t,r)=>{Promise.resolve().then(r.bind(r,62802))},32467:(e,t,r)=>{"use strict";r.d(t,{TL:()=>l,bL:()=>i});var n=r(12115),s=r(94446),a=r(95155);function l(e){let t=function(e){let t=n.forwardRef((e,t)=>{let{children:r,...a}=e;if(n.isValidElement(r)){var l;let e,i,o=(l=r,(i=(e=Object.getOwnPropertyDescriptor(l.props,"ref")?.get)&&"isReactWarning"in e&&e.isReactWarning)?l.ref:(i=(e=Object.getOwnPropertyDescriptor(l,"ref")?.get)&&"isReactWarning"in e&&e.isReactWarning)?l.props.ref:l.props.ref||l.ref),d=function(e,t){let r={...t};for(let n in t){let s=e[n],a=t[n];/^on[A-Z]/.test(n)?s&&a?r[n]=(...e)=>{let t=a(...e);return s(...e),t}:s&&(r[n]=s):"style"===n?r[n]={...s,...a}:"className"===n&&(r[n]=[s,a].filter(Boolean).join(" "))}return{...e,...r}}(a,r.props);return r.type!==n.Fragment&&(d.ref=t?(0,s.t)(t,o):o),n.cloneElement(r,d)}return n.Children.count(r)>1?n.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}(e),r=n.forwardRef((e,r)=>{let{children:s,...l}=e,i=n.Children.toArray(s),o=i.find(d);if(o){let e=o.props.children,s=i.map(t=>t!==o?t:n.Children.count(e)>1?n.Children.only(null):n.isValidElement(e)?e.props.children:null);return(0,a.jsx)(t,{...l,ref:r,children:n.isValidElement(e)?n.cloneElement(e,void 0,s):null})}return(0,a.jsx)(t,{...l,ref:r,children:s})});return r.displayName=`${e}.Slot`,r}var i=l("Slot"),o=Symbol("radix.slottable");function d(e){return n.isValidElement(e)&&"function"==typeof e.type&&"__radixId"in e.type&&e.type.__radixId===o}},62802:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>f});var n=r(95155),s=r(83928),a=r(83209),l=r(67812),i=r(68122),o=r(7e3),d=r(17666);let c=(0,r(70814).A)("triangle-alert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]]);function u(){let e=(0,s.f)(e=>e.wasteFlags);if(!(0,s.f)(e=>e.ledger))return(0,n.jsxs)("div",{className:"space-y-4",children:[(0,n.jsx)(i.E,{className:"h-8 w-48"}),(0,n.jsx)(i.E,{className:"h-32"})]});let t=e.reduce((e,t)=>e+t.estimatedTokensWasted,0);return(0,n.jsxs)("div",{className:"space-y-4",children:[(0,n.jsxs)("div",{className:"flex flex-wrap items-center gap-4 text-sm",children:[(0,n.jsxs)("div",{className:"flex items-center gap-1",children:[(0,n.jsx)(d.A,{className:"h-4 w-4 text-muted-foreground"}),(0,n.jsx)("span",{className:"text-muted-foreground",children:"Active Flags:"}),(0,n.jsx)("span",{className:"font-medium",children:e.length})]}),t>0&&(0,n.jsxs)("div",{children:[(0,n.jsx)("span",{className:"text-muted-foreground",children:"Est. Tokens Wasted:"})," ",(0,n.jsx)("span",{className:"font-medium text-destructive",children:(0,o.aT)(t)})]})]}),0===e.length?(0,n.jsx)(a.Zp,{children:(0,n.jsx)(a.Wu,{className:"py-8",children:(0,n.jsxs)("div",{className:"text-center",children:[(0,n.jsx)(d.A,{className:"h-8 w-8 text-muted-foreground mx-auto mb-2"}),(0,n.jsx)("p",{className:"text-sm text-muted-foreground",children:"No waste patterns detected. Run waste detection to analyze token usage."})]})})}):(0,n.jsx)("div",{className:"space-y-3",children:e.map((e,t)=>(0,n.jsxs)(a.Zp,{children:[(0,n.jsx)(a.aR,{className:"pb-2",children:(0,n.jsxs)("div",{className:"flex items-start justify-between",children:[(0,n.jsxs)(a.ZB,{className:"text-sm font-medium flex items-center gap-2",children:[(0,n.jsx)(c,{className:"h-4 w-4 text-yellow-500"}),function(e){switch(e){case"repeated-reads":return"Repeated Reads";case"missed-index-opportunity":return"Missed Index";case"action-log-bloat":return"Log Bloat";case"learning-memory-staleness":return"Stale Memory";case"index-miss-rate":return"High Miss Rate";default:return e}}(e.pattern)]}),(0,n.jsxs)(l.E,{variant:"destructive",className:"text-[10px]",children:["~",(0,o.aT)(e.estimatedTokensWasted)," wasted"]})]})}),(0,n.jsxs)(a.Wu,{children:[(0,n.jsx)("p",{className:"text-sm",children:e.description}),(0,n.jsx)("p",{className:"text-xs text-muted-foreground mt-2",children:e.suggestion})]})]},t))})]})}function f(){return(0,n.jsx)(u,{})}},67812:(e,t,r)=>{"use strict";r.d(t,{E:()=>o});var n=r(95155);r(12115);var s=r(83101),a=r(32467),l=r(25016);let i=(0,s.F)("inline-flex w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-full border border-transparent px-2 py-0.5 text-xs font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3",{variants:{variant:{default:"bg-primary text-primary-foreground [a&]:hover:bg-primary/90",secondary:"bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",destructive:"bg-destructive text-white focus-visible:ring-destructive/20 dark:bg-destructive/60 dark:focus-visible:ring-destructive/40 [a&]:hover:bg-destructive/90",outline:"border-border text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground",ghost:"[a&]:hover:bg-accent [a&]:hover:text-accent-foreground",link:"text-primary underline-offset-4 [a&]:hover:underline"}},defaultVariants:{variant:"default"}});function o(e){let{className:t,variant:r="default",asChild:s=!1,...o}=e,d=s?a.bL:"span";return(0,n.jsx)(d,{"data-slot":"badge","data-variant":r,className:(0,l.cn)(i({variant:r}),t),...o})}},68122:(e,t,r)=>{"use strict";r.d(t,{E:()=>a});var n=r(95155),s=r(25016);function a(e){let{className:t,...r}=e;return(0,n.jsx)("div",{"data-slot":"skeleton",className:(0,s.cn)("animate-pulse rounded-md bg-accent",t),...r})}},83101:(e,t,r)=>{"use strict";r.d(t,{F:()=>l});var n=r(2821);let s=e=>"boolean"==typeof e?`${e}`:0===e?"0":e,a=n.$,l=(e,t)=>r=>{var n;if((null==t?void 0:t.variants)==null)return a(e,null==r?void 0:r.class,null==r?void 0:r.className);let{variants:l,defaultVariants:i}=t,o=Object.keys(l).map(e=>{let t=null==r?void 0:r[e],n=null==i?void 0:i[e];if(null===t)return null;let a=s(t)||s(n);return l[e][a]}),d=r&&Object.entries(r).reduce((e,t)=>{let[r,n]=t;return void 0===n||(e[r]=n),e},{});return a(e,o,null==t||null==(n=t.compoundVariants)?void 0:n.reduce((e,t)=>{let{class:r,className:n,...s}=t;return Object.entries(s).every(e=>{let[t,r]=e;return Array.isArray(r)?r.includes({...i,...d}[t]):({...i,...d})[t]===r})?[...e,r,n]:e},[]),null==r?void 0:r.class,null==r?void 0:r.className)}},83209:(e,t,r)=>{"use strict";r.d(t,{Wu:()=>o,ZB:()=>i,Zp:()=>a,aR:()=>l});var n=r(95155);r(12115);var s=r(25016);function a(e){let{className:t,...r}=e;return(0,n.jsx)("div",{"data-slot":"card",className:(0,s.cn)("flex flex-col gap-6 rounded-xl border bg-card py-6 text-card-foreground shadow-sm",t),...r})}function l(e){let{className:t,...r}=e;return(0,n.jsx)("div",{"data-slot":"card-header",className:(0,s.cn)("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",t),...r})}function i(e){let{className:t,...r}=e;return(0,n.jsx)("div",{"data-slot":"card-title",className:(0,s.cn)("leading-none font-semibold",t),...r})}function o(e){let{className:t,...r}=e;return(0,n.jsx)("div",{"data-slot":"card-content",className:(0,s.cn)("px-6",t),...r})}},83928:(e,t,r)=>{"use strict";r.d(t,{f:()=>n});let n=(0,r(25959).v)(e=>({connected:!1,projects:[],activeProjectId:null,overview:null,ledger:null,fileIndex:null,tasks:[],taskDefinitions:[],deadLetters:[],health:null,learningMemory:null,actionLog:[],bugs:[],wasteFlags:[],designImages:[],setConnected:t=>e({connected:t}),setProjects:(t,r)=>e({projects:t,activeProjectId:r}),setActiveProject:t=>e({activeProjectId:t,overview:null,ledger:null,fileIndex:null,tasks:[],taskDefinitions:[],deadLetters:[],health:null,learningMemory:null,actionLog:[],bugs:[],wasteFlags:[],designImages:[]}),setOverview:t=>e({overview:t}),setLedger:t=>{var r;return e({ledger:t,wasteFlags:null!=(r=t.wasteFlags)?r:[]})},setFileIndex:t=>e({fileIndex:t}),setScheduler:(t,r,n)=>e({tasks:t,taskDefinitions:r,deadLetters:n}),setHealth:t=>e({health:t}),setLearningMemory:t=>e({learningMemory:t}),setActionLog:t=>e({actionLog:t}),setBugs:t=>e({bugs:t}),setWasteFlags:t=>e({wasteFlags:t}),setDesignImages:t=>e({designImages:t})}))},94446:(e,t,r)=>{"use strict";r.d(t,{s:()=>l,t:()=>a});var n=r(12115);function s(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}function a(...e){return t=>{let r=!1,n=e.map(e=>{let n=s(e,t);return r||"function"!=typeof n||(r=!0),n});if(r)return()=>{for(let t=0;t<n.length;t++){let r=n[t];"function"==typeof r?r():s(e[t],null)}}}}function l(...e){return n.useCallback(a(...e),e)}}},e=>{e.O(0,[160,441,255,358],()=>e(e.s=28022)),_N_E=e.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[120],{1473:(e,t,a)=>{"use strict";a.d(t,{A:()=>s});let s=(0,a(70814).A)("brain",[["path",{d:"M12 18V5",key:"adv99a"}],["path",{d:"M15 13a4.17 4.17 0 0 1-3-4 4.17 4.17 0 0 1-3 4",key:"1e3is1"}],["path",{d:"M17.598 6.5A3 3 0 1 0 12 5a3 3 0 1 0-5.598 1.5",key:"1gqd8o"}],["path",{d:"M17.997 5.125a4 4 0 0 1 2.526 5.77",key:"iwvgf7"}],["path",{d:"M18 18a4 4 0 0 0 2-7.464",key:"efp6ie"}],["path",{d:"M19.967 17.483A4 4 0 1 1 12 18a4 4 0 1 1-7.967-.517",key:"1gq6am"}],["path",{d:"M6 18a4 4 0 0 1-2-7.464",key:"k1g0md"}],["path",{d:"M6.003 5.125a4 4 0 0 0-2.526 5.77",key:"q97ue3"}]])},10035:(e,t,a)=>{Promise.resolve().then(a.bind(a,42462))},25016:(e,t,a)=>{"use strict";a.d(t,{cn:()=>n});var s=a(2821),r=a(75889);function n(){for(var e=arguments.length,t=Array(e),a=0;a<e;a++)t[a]=arguments[a];return(0,r.QP)((0,s.$)(t))}},42462:(e,t,a)=>{"use strict";a.r(t),a.d(t,{default:()=>u});var s=a(95155),r=a(83928),n=a(51539),i=a(67812),l=a(68122),o=a(1473);let d=[{key:"User Preferences",label:"User Preferences"},{key:"Key Learnings",label:"Key Learnings"},{key:"Do-Not-Repeat",label:"Do-Not-Repeat"},{key:"Decision Log",label:"Decision Log"}];function c(){var e;let t=(0,r.f)(e=>e.learningMemory);if(!t)return(0,s.jsxs)("div",{className:"space-y-4",children:[(0,s.jsx)(l.E,{className:"h-8 w-48"}),Array.from({length:4}).map((e,t)=>(0,s.jsx)(l.E,{className:"h-16"},t))]});let a=null!=(e=t.sections)?e:{};return(0,s.jsxs)("div",{className:"space-y-4",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)(o.A,{className:"h-4 w-4 text-muted-foreground"}),(0,s.jsx)("span",{className:"text-sm font-medium",children:t.projectName||"Unknown Project"})]}),(0,s.jsx)(n.nD,{type:"multiple",defaultValue:d.map(e=>e.key),children:d.map(e=>{var t;let r=null!=(t=a[e.key])?t:[];return(0,s.jsxs)(n.As,{value:e.key,children:[(0,s.jsx)(n.$m,{className:"text-sm",children:(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[e.label,(0,s.jsx)(i.E,{variant:"secondary",className:"text-[10px]",children:r.length})]})}),(0,s.jsx)(n.ub,{children:0===r.length?(0,s.jsx)("p",{className:"text-sm text-muted-foreground py-2",children:"No entries yet"}):(0,s.jsx)("ul",{className:"space-y-1",children:r.map((e,t)=>(0,s.jsx)("li",{className:"text-sm py-1 border-b border-border/50 last:border-0",children:e},t))})})]},e.key)})})]})}function u(){return(0,s.jsx)(c,{})}},51539:(e,t,a)=>{"use strict";a.d(t,{$m:()=>d,As:()=>o,nD:()=>l,ub:()=>c});var s=a(95155);a(12115);var r=a(24033),n=a(16083),i=a(25016);function l(e){let{...t}=e;return(0,s.jsx)(n.bL,{"data-slot":"accordion",...t})}function o(e){let{className:t,...a}=e;return(0,s.jsx)(n.q7,{"data-slot":"accordion-item",className:(0,i.cn)("border-b last:border-b-0",t),...a})}function d(e){let{className:t,children:a,...l}=e;return(0,s.jsx)(n.Y9,{className:"flex",children:(0,s.jsxs)(n.l9,{"data-slot":"accordion-trigger",className:(0,i.cn)("flex flex-1 items-start justify-between gap-4 rounded-md py-4 text-left text-sm font-medium transition-all outline-none hover:underline focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:opacity-50 [&[data-state=open]>svg]:rotate-180",t),...l,children:[a,(0,s.jsx)(r.A,{className:"pointer-events-none size-4 shrink-0 translate-y-0.5 text-muted-foreground transition-transform duration-200"})]})})}function c(e){let{className:t,children:a,...r}=e;return(0,s.jsx)(n.UC,{"data-slot":"accordion-content",className:"overflow-hidden text-sm data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down",...r,children:(0,s.jsx)("div",{className:(0,i.cn)("pt-0 pb-4",t),children:a})})}},67812:(e,t,a)=>{"use strict";a.d(t,{E:()=>o});var s=a(95155);a(12115);var r=a(83101),n=a(32467),i=a(25016);let l=(0,r.F)("inline-flex w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-full border border-transparent px-2 py-0.5 text-xs font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3",{variants:{variant:{default:"bg-primary text-primary-foreground [a&]:hover:bg-primary/90",secondary:"bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",destructive:"bg-destructive text-white focus-visible:ring-destructive/20 dark:bg-destructive/60 dark:focus-visible:ring-destructive/40 [a&]:hover:bg-destructive/90",outline:"border-border text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground",ghost:"[a&]:hover:bg-accent [a&]:hover:text-accent-foreground",link:"text-primary underline-offset-4 [a&]:hover:underline"}},defaultVariants:{variant:"default"}});function o(e){let{className:t,variant:a="default",asChild:r=!1,...o}=e,d=r?n.bL:"span";return(0,s.jsx)(d,{"data-slot":"badge","data-variant":a,className:(0,i.cn)(l({variant:a}),t),...o})}},68122:(e,t,a)=>{"use strict";a.d(t,{E:()=>n});var s=a(95155),r=a(25016);function n(e){let{className:t,...a}=e;return(0,s.jsx)("div",{"data-slot":"skeleton",className:(0,r.cn)("animate-pulse rounded-md bg-accent",t),...a})}},83928:(e,t,a)=>{"use strict";a.d(t,{f:()=>s});let s=(0,a(25959).v)(e=>({connected:!1,projects:[],activeProjectId:null,overview:null,ledger:null,fileIndex:null,tasks:[],taskDefinitions:[],deadLetters:[],health:null,learningMemory:null,actionLog:[],bugs:[],wasteFlags:[],designImages:[],setConnected:t=>e({connected:t}),setProjects:(t,a)=>e({projects:t,activeProjectId:a}),setActiveProject:t=>e({activeProjectId:t,overview:null,ledger:null,fileIndex:null,tasks:[],taskDefinitions:[],deadLetters:[],health:null,learningMemory:null,actionLog:[],bugs:[],wasteFlags:[],designImages:[]}),setOverview:t=>e({overview:t}),setLedger:t=>{var a;return e({ledger:t,wasteFlags:null!=(a=t.wasteFlags)?a:[]})},setFileIndex:t=>e({fileIndex:t}),setScheduler:(t,a,s)=>e({tasks:t,taskDefinitions:a,deadLetters:s}),setHealth:t=>e({health:t}),setLearningMemory:t=>e({learningMemory:t}),setActionLog:t=>e({actionLog:t}),setBugs:t=>e({bugs:t}),setWasteFlags:t=>e({wasteFlags:t}),setDesignImages:t=>e({designImages:t})}))}},e=>{e.O(0,[160,717,83,441,255,358],()=>e(e.s=10035)),_N_E=e.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[161],{1524:(e,t,r)=>{"use strict";r.d(t,{A:()=>n});let n=(0,r(70814).A)("trending-up",[["path",{d:"M16 7h6v6",key:"box55l"}],["path",{d:"m22 7-8.5 8.5-5-5L2 17",key:"1t1m79"}]])},7e3:(e,t,r)=>{"use strict";function n(e){return e>=1e6?(e/1e6).toFixed(1)+"M":e>=1e3?(e/1e3).toFixed(1)+"K":String(e)}function s(e){if(!e||e<=0)return"—";let t=Math.floor(e/1e3),r=Math.floor(t/60),n=Math.floor(r/60);return n>0?n+"h "+r%60+"m":r>0?r+"m "+t%60+"s":t+"s"}function a(e){if(!e)return"—";try{return new Date(e).toLocaleDateString()}catch(t){return e}}function l(e){if(!e)return"—";try{let t=new Date(e);return t.toLocaleDateString()+" "+t.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})}catch(t){return e}}r.d(t,{Y0:()=>s,Yq:()=>a,aT:()=>n,r6:()=>l})},10264:(e,t,r)=>{Promise.resolve().then(r.bind(r,48710))},25016:(e,t,r)=>{"use strict";r.d(t,{cn:()=>a});var n=r(2821),s=r(75889);function a(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return(0,s.QP)((0,n.$)(t))}},32467:(e,t,r)=>{"use strict";r.d(t,{TL:()=>l,bL:()=>i});var n=r(12115),s=r(94446),a=r(95155);function l(e){let t=function(e){let t=n.forwardRef((e,t)=>{let{children:r,...a}=e;if(n.isValidElement(r)){var l;let e,i,o=(l=r,(i=(e=Object.getOwnPropertyDescriptor(l.props,"ref")?.get)&&"isReactWarning"in e&&e.isReactWarning)?l.ref:(i=(e=Object.getOwnPropertyDescriptor(l,"ref")?.get)&&"isReactWarning"in e&&e.isReactWarning)?l.props.ref:l.props.ref||l.ref),d=function(e,t){let r={...t};for(let n in t){let s=e[n],a=t[n];/^on[A-Z]/.test(n)?s&&a?r[n]=(...e)=>{let t=a(...e);return s(...e),t}:s&&(r[n]=s):"style"===n?r[n]={...s,...a}:"className"===n&&(r[n]=[s,a].filter(Boolean).join(" "))}return{...e,...r}}(a,r.props);return r.type!==n.Fragment&&(d.ref=t?(0,s.t)(t,o):o),n.cloneElement(r,d)}return n.Children.count(r)>1?n.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}(e),r=n.forwardRef((e,r)=>{let{children:s,...l}=e,i=n.Children.toArray(s),o=i.find(d);if(o){let e=o.props.children,s=i.map(t=>t!==o?t:n.Children.count(e)>1?n.Children.only(null):n.isValidElement(e)?e.props.children:null);return(0,a.jsx)(t,{...l,ref:r,children:n.isValidElement(e)?n.cloneElement(e,void 0,s):null})}return(0,a.jsx)(t,{...l,ref:r,children:s})});return r.displayName=`${e}.Slot`,r}var i=l("Slot"),o=Symbol("radix.slottable");function d(e){return n.isValidElement(e)&&"function"==typeof e.type&&"__radixId"in e.type&&e.type.__radixId===o}},34172:(e,t,r)=>{"use strict";r.d(t,{A:()=>n});let n=(0,r(70814).A)("server",[["rect",{width:"20",height:"8",x:"2",y:"2",rx:"2",ry:"2",key:"ngkwjq"}],["rect",{width:"20",height:"8",x:"2",y:"14",rx:"2",ry:"2",key:"iecqi9"}],["line",{x1:"6",x2:"6.01",y1:"6",y2:"6",key:"16zg32"}],["line",{x1:"6",x2:"6.01",y1:"18",y2:"18",key:"nzw8ys"}]])},48055:(e,t,r)=>{"use strict";r.d(t,{A:()=>n});let n=(0,r(70814).A)("coins",[["path",{d:"M13.744 17.736a6 6 0 1 1-7.48-7.48",key:"bq4yh3"}],["path",{d:"M15 6h1v4",key:"11y1tn"}],["path",{d:"m6.134 14.768.866-.5 2 3.464",key:"17snzx"}],["circle",{cx:"16",cy:"8",r:"6",key:"14bfc9"}]])},48710:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>y});var n=r(95155),s=r(83928),a=r(83209),l=r(67812),i=r(68122),o=r(7e3),d=r(50906),c=r(48055),u=r(1524),m=r(70814);let f=(0,m.A)("book-open",[["path",{d:"M12 7v14",key:"1akyts"}],["path",{d:"M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z",key:"ruj8y"}]]),g=(0,m.A)("pen-line",[["path",{d:"M13 21h8",key:"1jsn5i"}],["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}]]);var h=r(34172),x=r(58734);let v=[{id:"sessions",label:"Total Sessions",icon:d.A,getValue:e=>e.summary.totalSessions},{id:"tokens",label:"Total Tokens",icon:c.A,getValue:e=>e.summary.totalTokens},{id:"savings",label:"Est. Savings",icon:u.A,getValue:e=>e.summary.estimatedSavings},{id:"reads",label:"Total Reads",icon:f,getValue:e=>e.summary.totalReads},{id:"writes",label:"Total Writes",icon:g,getValue:e=>e.summary.totalWrites}];function p(){var e,t;let r=(0,s.f)(e=>e.overview),d=(0,s.f)(e=>e.fileIndex),c=(0,s.f)(e=>e.health);return r?(0,n.jsxs)("div",{className:"space-y-6",children:[(0,n.jsxs)(a.Zp,{children:[(0,n.jsxs)(a.aR,{className:"flex flex-row items-center justify-between pb-2",children:[(0,n.jsx)(a.ZB,{className:"text-sm font-medium",children:(0,n.jsxs)("div",{className:"flex items-center gap-2",children:[(0,n.jsx)(h.A,{className:"h-4 w-4"}),"Daemon Status"]})}),(0,n.jsx)(l.E,{variant:r.daemon.running?"default":"destructive",children:r.daemon.running?"running":"offline"})]}),(0,n.jsx)(a.Wu,{children:(0,n.jsx)("p",{className:"text-sm text-muted-foreground",children:r.daemon.running&&c?"Uptime: ".concat((0,o.Y0)(c.uptimeMs)):"Start with: mink daemon start"})})]}),(0,n.jsxs)("div",{className:"grid gap-4 sm:grid-cols-2 lg:grid-cols-3",children:[v.map(e=>(0,n.jsxs)(a.Zp,{children:[(0,n.jsxs)(a.aR,{className:"flex flex-row items-center justify-between pb-2",children:[(0,n.jsx)(a.ZB,{className:"text-sm font-medium text-muted-foreground",children:e.label}),(0,n.jsx)(e.icon,{className:"h-4 w-4 text-muted-foreground"})]}),(0,n.jsx)(a.Wu,{children:(0,n.jsx)("div",{className:"text-2xl font-bold",children:(0,o.aT)(e.getValue(r))})})]},e.id)),(0,n.jsxs)(a.Zp,{children:[(0,n.jsxs)(a.aR,{className:"flex flex-row items-center justify-between pb-2",children:[(0,n.jsx)(a.ZB,{className:"text-sm font-medium text-muted-foreground",children:"Indexed Files"}),(0,n.jsx)(x.A,{className:"h-4 w-4 text-muted-foreground"})]}),(0,n.jsx)(a.Wu,{children:(0,n.jsx)("div",{className:"text-2xl font-bold",children:(0,o.aT)(null!=(t=null==d||null==(e=d.header)?void 0:e.totalFiles)?t:0)})})]})]}),(0,n.jsxs)(a.Zp,{children:[(0,n.jsx)(a.aR,{children:(0,n.jsx)(a.ZB,{className:"text-sm font-medium",children:"State File Health"})}),(0,n.jsx)(a.Wu,{children:(0,n.jsx)("div",{className:"grid gap-2 sm:grid-cols-2 lg:grid-cols-4",children:r.stateFiles.map(e=>(0,n.jsxs)("div",{className:"flex items-center justify-between rounded-md border px-3 py-2",children:[(0,n.jsx)("span",{className:"text-xs font-mono truncate mr-2",children:e.name}),(0,n.jsx)(l.E,{variant:"ok"===e.status?"default":"missing"===e.status?"secondary":"destructive",className:"text-[10px]",children:e.status})]},e.name))})})]})]}):(0,n.jsxs)("div",{className:"space-y-6",children:[(0,n.jsx)(i.E,{className:"h-8 w-48"}),(0,n.jsx)("div",{className:"grid gap-4 sm:grid-cols-2 lg:grid-cols-3",children:Array.from({length:6}).map((e,t)=>(0,n.jsx)(i.E,{className:"h-24"},t))})]})}function y(){return(0,n.jsx)(p,{})}},50906:(e,t,r)=>{"use strict";r.d(t,{A:()=>n});let n=(0,r(70814).A)("activity",[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]])},58734:(e,t,r)=>{"use strict";r.d(t,{A:()=>n});let n=(0,r(70814).A)("folder-open",[["path",{d:"m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2",key:"usdka0"}]])},67812:(e,t,r)=>{"use strict";r.d(t,{E:()=>o});var n=r(95155);r(12115);var s=r(83101),a=r(32467),l=r(25016);let i=(0,s.F)("inline-flex w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-full border border-transparent px-2 py-0.5 text-xs font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3",{variants:{variant:{default:"bg-primary text-primary-foreground [a&]:hover:bg-primary/90",secondary:"bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",destructive:"bg-destructive text-white focus-visible:ring-destructive/20 dark:bg-destructive/60 dark:focus-visible:ring-destructive/40 [a&]:hover:bg-destructive/90",outline:"border-border text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground",ghost:"[a&]:hover:bg-accent [a&]:hover:text-accent-foreground",link:"text-primary underline-offset-4 [a&]:hover:underline"}},defaultVariants:{variant:"default"}});function o(e){let{className:t,variant:r="default",asChild:s=!1,...o}=e,d=s?a.bL:"span";return(0,n.jsx)(d,{"data-slot":"badge","data-variant":r,className:(0,l.cn)(i({variant:r}),t),...o})}},68122:(e,t,r)=>{"use strict";r.d(t,{E:()=>a});var n=r(95155),s=r(25016);function a(e){let{className:t,...r}=e;return(0,n.jsx)("div",{"data-slot":"skeleton",className:(0,s.cn)("animate-pulse rounded-md bg-accent",t),...r})}},83101:(e,t,r)=>{"use strict";r.d(t,{F:()=>l});var n=r(2821);let s=e=>"boolean"==typeof e?`${e}`:0===e?"0":e,a=n.$,l=(e,t)=>r=>{var n;if((null==t?void 0:t.variants)==null)return a(e,null==r?void 0:r.class,null==r?void 0:r.className);let{variants:l,defaultVariants:i}=t,o=Object.keys(l).map(e=>{let t=null==r?void 0:r[e],n=null==i?void 0:i[e];if(null===t)return null;let a=s(t)||s(n);return l[e][a]}),d=r&&Object.entries(r).reduce((e,t)=>{let[r,n]=t;return void 0===n||(e[r]=n),e},{});return a(e,o,null==t||null==(n=t.compoundVariants)?void 0:n.reduce((e,t)=>{let{class:r,className:n,...s}=t;return Object.entries(s).every(e=>{let[t,r]=e;return Array.isArray(r)?r.includes({...i,...d}[t]):({...i,...d})[t]===r})?[...e,r,n]:e},[]),null==r?void 0:r.class,null==r?void 0:r.className)}},83209:(e,t,r)=>{"use strict";r.d(t,{Wu:()=>o,ZB:()=>i,Zp:()=>a,aR:()=>l});var n=r(95155);r(12115);var s=r(25016);function a(e){let{className:t,...r}=e;return(0,n.jsx)("div",{"data-slot":"card",className:(0,s.cn)("flex flex-col gap-6 rounded-xl border bg-card py-6 text-card-foreground shadow-sm",t),...r})}function l(e){let{className:t,...r}=e;return(0,n.jsx)("div",{"data-slot":"card-header",className:(0,s.cn)("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",t),...r})}function i(e){let{className:t,...r}=e;return(0,n.jsx)("div",{"data-slot":"card-title",className:(0,s.cn)("leading-none font-semibold",t),...r})}function o(e){let{className:t,...r}=e;return(0,n.jsx)("div",{"data-slot":"card-content",className:(0,s.cn)("px-6",t),...r})}},83928:(e,t,r)=>{"use strict";r.d(t,{f:()=>n});let n=(0,r(25959).v)(e=>({connected:!1,projects:[],activeProjectId:null,overview:null,ledger:null,fileIndex:null,tasks:[],taskDefinitions:[],deadLetters:[],health:null,learningMemory:null,actionLog:[],bugs:[],wasteFlags:[],designImages:[],setConnected:t=>e({connected:t}),setProjects:(t,r)=>e({projects:t,activeProjectId:r}),setActiveProject:t=>e({activeProjectId:t,overview:null,ledger:null,fileIndex:null,tasks:[],taskDefinitions:[],deadLetters:[],health:null,learningMemory:null,actionLog:[],bugs:[],wasteFlags:[],designImages:[]}),setOverview:t=>e({overview:t}),setLedger:t=>{var r;return e({ledger:t,wasteFlags:null!=(r=t.wasteFlags)?r:[]})},setFileIndex:t=>e({fileIndex:t}),setScheduler:(t,r,n)=>e({tasks:t,taskDefinitions:r,deadLetters:n}),setHealth:t=>e({health:t}),setLearningMemory:t=>e({learningMemory:t}),setActionLog:t=>e({actionLog:t}),setBugs:t=>e({bugs:t}),setWasteFlags:t=>e({wasteFlags:t}),setDesignImages:t=>e({designImages:t})}))},94446:(e,t,r)=>{"use strict";r.d(t,{s:()=>l,t:()=>a});var n=r(12115);function s(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}function a(...e){return t=>{let r=!1,n=e.map(e=>{let n=s(e,t);return r||"function"!=typeof n||(r=!0),n});if(r)return()=>{for(let t=0;t<n.length;t++){let r=n[t];"function"==typeof r?r():s(e[t],null)}}}}function l(...e){return n.useCallback(a(...e),e)}}},e=>{e.O(0,[160,441,255,358],()=>e(e.s=10264)),_N_E=e.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[395],{2327:(e,t,n)=>{"use strict";async function r(e,t){let n=t?"".concat(e).concat(e.includes("?")?"&":"?","project=").concat(encodeURIComponent(t)):e,r=await fetch(n);if(!r.ok)throw Error("API error ".concat(r.status,": ").concat(e));return r.json()}function s(){return r("/api/projects")}function a(e){return r("/api/overview",e)}function i(e){return r("/api/token-ledger",e)}function l(e){return r("/api/file-index",e)}function c(e){return r("/api/scheduler",e)}function o(e){return r("/api/learning-memory",e)}function d(e){return r("/api/action-log",e)}function u(e){return r("/api/bugs",e)}function h(e){return r("/api/design",e)}async function f(e){return(await fetch("/api/switch-project",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({projectId:e})})).json()}async function x(e,t){let n=t?"?project=".concat(encodeURIComponent(t)):"";return(await fetch("/api/tasks/".concat(encodeURIComponent(e),"/run").concat(n),{method:"POST"})).json()}async function m(e,t){let n=t?"?project=".concat(encodeURIComponent(t)):"";return(await fetch("/api/dead-letter/".concat(encodeURIComponent(e),"/retry").concat(n),{method:"POST"})).json()}async function v(e){let t=e?"?project=".concat(encodeURIComponent(e)):"";return(await fetch("/api/rescan".concat(t),{method:"POST"})).json()}n.d(t,{EP:()=>a,MP:()=>u,P:()=>x,Vo:()=>i,Z4:()=>m,co:()=>o,e2:()=>c,hD:()=>v,hY:()=>h,pu:()=>d,vj:()=>s,xl:()=>l,yP:()=>f})},7e3:(e,t,n)=>{"use strict";function r(e){return e>=1e6?(e/1e6).toFixed(1)+"M":e>=1e3?(e/1e3).toFixed(1)+"K":String(e)}function s(e){if(!e||e<=0)return"—";let t=Math.floor(e/1e3),n=Math.floor(t/60),r=Math.floor(n/60);return r>0?r+"h "+n%60+"m":n>0?n+"m "+t%60+"s":t+"s"}function a(e){if(!e)return"—";try{return new Date(e).toLocaleDateString()}catch(t){return e}}function i(e){if(!e)return"—";try{let t=new Date(e);return t.toLocaleDateString()+" "+t.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})}catch(t){return e}}n.d(t,{Y0:()=>s,Yq:()=>a,aT:()=>r,r6:()=>i})},19680:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>I});var r=n(95155),s=n(12115),a=n(83928),i=n(83209),l=n(67812),c=n(97003),o=n(68122),d=n(25016);function u(e){let{className:t,...n}=e;return(0,r.jsx)("div",{"data-slot":"table-container",className:"relative w-full overflow-x-auto",children:(0,r.jsx)("table",{"data-slot":"table",className:(0,d.cn)("w-full caption-bottom text-sm",t),...n})})}function h(e){let{className:t,...n}=e;return(0,r.jsx)("thead",{"data-slot":"table-header",className:(0,d.cn)("[&_tr]:border-b",t),...n})}function f(e){let{className:t,...n}=e;return(0,r.jsx)("tbody",{"data-slot":"table-body",className:(0,d.cn)("[&_tr:last-child]:border-0",t),...n})}function x(e){let{className:t,...n}=e;return(0,r.jsx)("tr",{"data-slot":"table-row",className:(0,d.cn)("border-b transition-colors hover:bg-muted/50 has-aria-expanded:bg-muted/50 data-[state=selected]:bg-muted",t),...n})}function m(e){let{className:t,...n}=e;return(0,r.jsx)("th",{"data-slot":"table-head",className:(0,d.cn)("h-10 px-2 text-left align-middle font-medium whitespace-nowrap text-foreground [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",t),...n})}function v(e){let{className:t,...n}=e;return(0,r.jsx)("td",{"data-slot":"table-cell",className:(0,d.cn)("p-2 align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",t),...n})}var g=n(2327),p=n(7e3),j=n(34172),b=n(70814);let y=(0,b.A)("refresh-cw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]),w=(0,b.A)("play",[["path",{d:"M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z",key:"10ikf1"}]]),k=(0,b.A)("rotate-ccw",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]]);function N(){var e,t;let n=(0,a.f)(e=>e.taskDefinitions),d=(0,a.f)(e=>e.tasks),b=(0,a.f)(e=>e.deadLetters),N=(0,a.f)(e=>e.health),I=(0,a.f)(e=>e.overview),S=(0,a.f)(e=>e.activeProjectId),[L,R]=(0,s.useState)(new Set),C=null!=(t=null==I||null==(e=I.daemon)?void 0:e.running)&&t,z=null!=S?S:void 0;async function M(e){R(t=>new Set(t).add(e));try{await (0,g.P)(e,z)}finally{R(t=>{let n=new Set(t);return n.delete(e),n})}}async function P(e){R(t=>new Set(t).add("dl-".concat(e)));try{await (0,g.Z4)(e,z)}finally{R(t=>{let n=new Set(t);return n.delete("dl-".concat(e)),n})}}async function A(){R(e=>new Set(e).add("rescan"));try{await (0,g.hD)(z)}finally{R(e=>{let t=new Set(e);return t.delete("rescan"),t})}}return I?(0,r.jsxs)("div",{className:"space-y-6",children:[(0,r.jsxs)(i.Zp,{children:[(0,r.jsxs)(i.aR,{className:"flex flex-row items-center justify-between pb-2",children:[(0,r.jsx)(i.ZB,{className:"text-sm font-medium",children:(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsx)(j.A,{className:"h-4 w-4"}),"Daemon Health"]})}),(0,r.jsx)(l.E,{variant:C?"default":"destructive",children:C?"running":"offline"})]}),(0,r.jsx)(i.Wu,{children:(0,r.jsx)("p",{className:"text-sm text-muted-foreground",children:C&&N?"Uptime: ".concat((0,p.Y0)(N.uptimeMs)):"Daemon not running"})})]}),(0,r.jsxs)(i.Zp,{children:[(0,r.jsxs)(i.aR,{className:"flex flex-row items-center justify-between",children:[(0,r.jsx)(i.ZB,{className:"text-sm font-medium",children:"Scheduled Tasks"}),(0,r.jsxs)(c.$,{variant:"outline",size:"sm",onClick:A,disabled:L.has("rescan"),children:[(0,r.jsx)(y,{className:"h-3 w-3 mr-1 ".concat(L.has("rescan")?"animate-spin":"")}),"Rescan Index"]})]}),(0,r.jsx)(i.Wu,{children:0===n.length?(0,r.jsx)("p",{className:"text-sm text-muted-foreground",children:"No tasks configured"}):(0,r.jsxs)(u,{children:[(0,r.jsx)(h,{children:(0,r.jsxs)(x,{children:[(0,r.jsx)(m,{children:"Task"}),(0,r.jsx)(m,{children:"Schedule"}),(0,r.jsx)(m,{children:"Status"}),(0,r.jsx)(m,{children:"Last Run"}),(0,r.jsx)(m,{children:"Next Run"}),(0,r.jsx)(m,{children:"Failures"}),(0,r.jsx)(m,{className:"w-20",children:"Actions"})]})}),(0,r.jsx)(f,{children:n.map(e=>{var t,n,s,a;let i=d.find(t=>t.taskId===e.id),o=null!=(t=null==i?void 0:i.status)?t:"idle";return(0,r.jsxs)(x,{children:[(0,r.jsx)(v,{children:(0,r.jsxs)("div",{children:[(0,r.jsx)("span",{className:"font-medium text-sm",children:e.name}),e.description&&(0,r.jsx)("p",{className:"text-xs text-muted-foreground",children:e.description})]})}),(0,r.jsx)(v,{className:"text-xs font-mono",children:e.schedule}),(0,r.jsx)(v,{children:(0,r.jsx)(l.E,{variant:function(e){switch(e){case"running":return"default";case"dead-lettered":return"destructive";case"retrying":return"secondary";default:return"outline"}}(o),children:o})}),(0,r.jsx)(v,{className:"text-xs",children:(0,p.r6)(null!=(n=null==i?void 0:i.lastRunAt)?n:"")}),(0,r.jsx)(v,{className:"text-xs",children:(0,p.r6)(null!=(s=null==i?void 0:i.nextRunAt)?s:"")}),(0,r.jsx)(v,{children:null!=(a=null==i?void 0:i.consecutiveFailures)?a:0}),(0,r.jsx)(v,{children:(0,r.jsx)(c.$,{variant:"ghost",size:"icon",className:"h-7 w-7",onClick:()=>M(e.id),disabled:L.has(e.id),children:(0,r.jsx)(w,{className:"h-3 w-3"})})})]},e.id)})})]})})]}),(0,r.jsxs)(i.Zp,{children:[(0,r.jsx)(i.aR,{children:(0,r.jsxs)(i.ZB,{className:"text-sm font-medium",children:["Dead Letter Queue",b.length>0&&(0,r.jsx)(l.E,{variant:"destructive",className:"ml-2",children:b.length})]})}),(0,r.jsx)(i.Wu,{children:0===b.length?(0,r.jsx)("p",{className:"text-sm text-muted-foreground",children:"No dead-lettered tasks"}):(0,r.jsx)("div",{className:"space-y-3",children:b.map(e=>{var t;return(0,r.jsxs)("div",{className:"flex items-start justify-between rounded-md border p-3",children:[(0,r.jsxs)("div",{className:"space-y-1",children:[(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsx)("span",{className:"font-medium text-sm",children:e.taskId}),(0,r.jsxs)(l.E,{variant:"destructive",className:"text-[10px]",children:[e.attemptCount," attempts"]})]}),(0,r.jsxs)("p",{className:"text-xs text-muted-foreground",children:["Dead-lettered: ",(0,p.r6)(e.deadLetteredAt)]}),(null==(t=e.errorMessages)?void 0:t.length)>0&&(0,r.jsx)("p",{className:"text-xs text-destructive",children:e.errorMessages[e.errorMessages.length-1]})]}),(0,r.jsxs)(c.$,{variant:"outline",size:"sm",onClick:()=>P(e.taskId),disabled:L.has("dl-".concat(e.taskId)),children:[(0,r.jsx)(k,{className:"h-3 w-3 mr-1"}),"Retry"]})]},e.taskId)})})})]})]}):(0,r.jsxs)("div",{className:"space-y-6",children:[(0,r.jsx)(o.E,{className:"h-20"}),(0,r.jsx)(o.E,{className:"h-64"})]})}function I(){return(0,r.jsx)(N,{})}},25016:(e,t,n)=>{"use strict";n.d(t,{cn:()=>a});var r=n(2821),s=n(75889);function a(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];return(0,s.QP)((0,r.$)(t))}},32467:(e,t,n)=>{"use strict";n.d(t,{TL:()=>i,bL:()=>l});var r=n(12115),s=n(94446),a=n(95155);function i(e){let t=function(e){let t=r.forwardRef((e,t)=>{let{children:n,...a}=e;if(r.isValidElement(n)){var i;let e,l,c=(i=n,(l=(e=Object.getOwnPropertyDescriptor(i.props,"ref")?.get)&&"isReactWarning"in e&&e.isReactWarning)?i.ref:(l=(e=Object.getOwnPropertyDescriptor(i,"ref")?.get)&&"isReactWarning"in e&&e.isReactWarning)?i.props.ref:i.props.ref||i.ref),o=function(e,t){let n={...t};for(let r in t){let s=e[r],a=t[r];/^on[A-Z]/.test(r)?s&&a?n[r]=(...e)=>{let t=a(...e);return s(...e),t}:s&&(n[r]=s):"style"===r?n[r]={...s,...a}:"className"===r&&(n[r]=[s,a].filter(Boolean).join(" "))}return{...e,...n}}(a,n.props);return n.type!==r.Fragment&&(o.ref=t?(0,s.t)(t,c):c),r.cloneElement(n,o)}return r.Children.count(n)>1?r.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}(e),n=r.forwardRef((e,n)=>{let{children:s,...i}=e,l=r.Children.toArray(s),c=l.find(o);if(c){let e=c.props.children,s=l.map(t=>t!==c?t:r.Children.count(e)>1?r.Children.only(null):r.isValidElement(e)?e.props.children:null);return(0,a.jsx)(t,{...i,ref:n,children:r.isValidElement(e)?r.cloneElement(e,void 0,s):null})}return(0,a.jsx)(t,{...i,ref:n,children:s})});return n.displayName=`${e}.Slot`,n}var l=i("Slot"),c=Symbol("radix.slottable");function o(e){return r.isValidElement(e)&&"function"==typeof e.type&&"__radixId"in e.type&&e.type.__radixId===c}},34172:(e,t,n)=>{"use strict";n.d(t,{A:()=>r});let r=(0,n(70814).A)("server",[["rect",{width:"20",height:"8",x:"2",y:"2",rx:"2",ry:"2",key:"ngkwjq"}],["rect",{width:"20",height:"8",x:"2",y:"14",rx:"2",ry:"2",key:"iecqi9"}],["line",{x1:"6",x2:"6.01",y1:"6",y2:"6",key:"16zg32"}],["line",{x1:"6",x2:"6.01",y1:"18",y2:"18",key:"nzw8ys"}]])},63772:(e,t,n)=>{Promise.resolve().then(n.bind(n,19680))},67812:(e,t,n)=>{"use strict";n.d(t,{E:()=>c});var r=n(95155);n(12115);var s=n(83101),a=n(32467),i=n(25016);let l=(0,s.F)("inline-flex w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-full border border-transparent px-2 py-0.5 text-xs font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3",{variants:{variant:{default:"bg-primary text-primary-foreground [a&]:hover:bg-primary/90",secondary:"bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",destructive:"bg-destructive text-white focus-visible:ring-destructive/20 dark:bg-destructive/60 dark:focus-visible:ring-destructive/40 [a&]:hover:bg-destructive/90",outline:"border-border text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground",ghost:"[a&]:hover:bg-accent [a&]:hover:text-accent-foreground",link:"text-primary underline-offset-4 [a&]:hover:underline"}},defaultVariants:{variant:"default"}});function c(e){let{className:t,variant:n="default",asChild:s=!1,...c}=e,o=s?a.bL:"span";return(0,r.jsx)(o,{"data-slot":"badge","data-variant":n,className:(0,i.cn)(l({variant:n}),t),...c})}},68122:(e,t,n)=>{"use strict";n.d(t,{E:()=>a});var r=n(95155),s=n(25016);function a(e){let{className:t,...n}=e;return(0,r.jsx)("div",{"data-slot":"skeleton",className:(0,s.cn)("animate-pulse rounded-md bg-accent",t),...n})}},83101:(e,t,n)=>{"use strict";n.d(t,{F:()=>i});var r=n(2821);let s=e=>"boolean"==typeof e?`${e}`:0===e?"0":e,a=r.$,i=(e,t)=>n=>{var r;if((null==t?void 0:t.variants)==null)return a(e,null==n?void 0:n.class,null==n?void 0:n.className);let{variants:i,defaultVariants:l}=t,c=Object.keys(i).map(e=>{let t=null==n?void 0:n[e],r=null==l?void 0:l[e];if(null===t)return null;let a=s(t)||s(r);return i[e][a]}),o=n&&Object.entries(n).reduce((e,t)=>{let[n,r]=t;return void 0===r||(e[n]=r),e},{});return a(e,c,null==t||null==(r=t.compoundVariants)?void 0:r.reduce((e,t)=>{let{class:n,className:r,...s}=t;return Object.entries(s).every(e=>{let[t,n]=e;return Array.isArray(n)?n.includes({...l,...o}[t]):({...l,...o})[t]===n})?[...e,n,r]:e},[]),null==n?void 0:n.class,null==n?void 0:n.className)}},83209:(e,t,n)=>{"use strict";n.d(t,{Wu:()=>c,ZB:()=>l,Zp:()=>a,aR:()=>i});var r=n(95155);n(12115);var s=n(25016);function a(e){let{className:t,...n}=e;return(0,r.jsx)("div",{"data-slot":"card",className:(0,s.cn)("flex flex-col gap-6 rounded-xl border bg-card py-6 text-card-foreground shadow-sm",t),...n})}function i(e){let{className:t,...n}=e;return(0,r.jsx)("div",{"data-slot":"card-header",className:(0,s.cn)("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",t),...n})}function l(e){let{className:t,...n}=e;return(0,r.jsx)("div",{"data-slot":"card-title",className:(0,s.cn)("leading-none font-semibold",t),...n})}function c(e){let{className:t,...n}=e;return(0,r.jsx)("div",{"data-slot":"card-content",className:(0,s.cn)("px-6",t),...n})}},83928:(e,t,n)=>{"use strict";n.d(t,{f:()=>r});let r=(0,n(25959).v)(e=>({connected:!1,projects:[],activeProjectId:null,overview:null,ledger:null,fileIndex:null,tasks:[],taskDefinitions:[],deadLetters:[],health:null,learningMemory:null,actionLog:[],bugs:[],wasteFlags:[],designImages:[],setConnected:t=>e({connected:t}),setProjects:(t,n)=>e({projects:t,activeProjectId:n}),setActiveProject:t=>e({activeProjectId:t,overview:null,ledger:null,fileIndex:null,tasks:[],taskDefinitions:[],deadLetters:[],health:null,learningMemory:null,actionLog:[],bugs:[],wasteFlags:[],designImages:[]}),setOverview:t=>e({overview:t}),setLedger:t=>{var n;return e({ledger:t,wasteFlags:null!=(n=t.wasteFlags)?n:[]})},setFileIndex:t=>e({fileIndex:t}),setScheduler:(t,n,r)=>e({tasks:t,taskDefinitions:n,deadLetters:r}),setHealth:t=>e({health:t}),setLearningMemory:t=>e({learningMemory:t}),setActionLog:t=>e({actionLog:t}),setBugs:t=>e({bugs:t}),setWasteFlags:t=>e({wasteFlags:t}),setDesignImages:t=>e({designImages:t})}))},94446:(e,t,n)=>{"use strict";n.d(t,{s:()=>i,t:()=>a});var r=n(12115);function s(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}function a(...e){return t=>{let n=!1,r=e.map(e=>{let r=s(e,t);return n||"function"!=typeof r||(n=!0),r});if(n)return()=>{for(let t=0;t<r.length;t++){let n=r[t];"function"==typeof n?n():s(e[t],null)}}}}function i(...e){return r.useCallback(a(...e),e)}},97003:(e,t,n)=>{"use strict";n.d(t,{$:()=>c});var r=n(95155);n(12115);var s=n(83101),a=n(32467),i=n(25016);let l=(0,s.F)("inline-flex shrink-0 items-center justify-center gap-2 rounded-md text-sm font-medium whitespace-nowrap transition-all outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:bg-destructive/60 dark:focus-visible:ring-destructive/40",outline:"border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:border-input dark:bg-input/30 dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2 has-[>svg]:px-3",xs:"h-6 gap-1 rounded-md px-2 text-xs has-[>svg]:px-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-8 gap-1.5 rounded-md px-3 has-[>svg]:px-2.5",lg:"h-10 rounded-md px-6 has-[>svg]:px-4",icon:"size-9","icon-xs":"size-6 rounded-md [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-8","icon-lg":"size-10"}},defaultVariants:{variant:"default",size:"default"}});function c(e){let{className:t,variant:n="default",size:s="default",asChild:c=!1,...o}=e,d=c?a.bL:"button";return(0,r.jsx)(d,{"data-slot":"button","data-variant":n,"data-size":s,className:(0,i.cn)(l({variant:n,size:s,className:t})),...o})}}},e=>{e.O(0,[160,441,255,358],()=>e(e.s=63772)),_N_E=e.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[288],{7e3:(e,s,t)=>{"use strict";function r(e){return e>=1e6?(e/1e6).toFixed(1)+"M":e>=1e3?(e/1e3).toFixed(1)+"K":String(e)}function a(e){if(!e||e<=0)return"—";let s=Math.floor(e/1e3),t=Math.floor(s/60),r=Math.floor(t/60);return r>0?r+"h "+t%60+"m":t>0?t+"m "+s%60+"s":s+"s"}function l(e){if(!e)return"—";try{return new Date(e).toLocaleDateString()}catch(s){return e}}function n(e){if(!e)return"—";try{let s=new Date(e);return s.toLocaleDateString()+" "+s.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})}catch(s){return e}}t.d(s,{Y0:()=>a,Yq:()=>l,aT:()=>r,r6:()=>n})},25016:(e,s,t)=>{"use strict";t.d(s,{cn:()=>l});var r=t(2821),a=t(75889);function l(){for(var e=arguments.length,s=Array(e),t=0;t<e;t++)s[t]=arguments[t];return(0,a.QP)((0,r.$)(s))}},49714:(e,s,t)=>{"use strict";t.r(s),t.d(s,{default:()=>C});var r=t(95155),a=t(83928),l=t(83209),n=t(68122),i=t(7e3),d=t(26265),o=t(98128),c=t(68425),u=t(47734),x=t(73697),m=t(33420),h=t(65642);function g(e){let{sessions:s}=e,t=s.map((e,s)=>{var t,r;return{name:"S".concat(s+1),tokens:null!=(r=null==(t=e.totals)?void 0:t.estimatedTokens)?r:0}});return 0===t.length?(0,r.jsxs)(l.Zp,{children:[(0,r.jsx)(l.aR,{children:(0,r.jsx)(l.ZB,{className:"text-sm",children:"Token Usage Per Session"})}),(0,r.jsx)(l.Wu,{children:(0,r.jsx)("p",{className:"text-sm text-muted-foreground",children:"No sessions recorded yet"})})]}):(0,r.jsxs)(l.Zp,{children:[(0,r.jsx)(l.aR,{children:(0,r.jsx)(l.ZB,{className:"text-sm",children:"Token Usage Per Session"})}),(0,r.jsx)(l.Wu,{children:(0,r.jsx)(d.u,{width:"100%",height:200,children:(0,r.jsxs)(o.E,{data:t,children:[(0,r.jsx)(c.d,{strokeDasharray:"3 3",className:"stroke-border"}),(0,r.jsx)(u.W,{dataKey:"name",tick:{fontSize:11},className:"fill-muted-foreground",interval:t.length>15?Math.ceil(t.length/15):0}),(0,r.jsx)(x.h,{tick:{fontSize:11},className:"fill-muted-foreground",tickFormatter:i.aT}),(0,r.jsx)(m.m,{formatter:e=>[(0,i.aT)(Number(e)),"Tokens"],contentStyle:{backgroundColor:"hsl(var(--card))",border:"1px solid hsl(var(--border))",borderRadius:"6px",color:"hsl(var(--foreground))"}}),(0,r.jsx)(h.yP,{dataKey:"tokens",fill:"hsl(var(--chart-1))",radius:[4,4,0,0]})]})})})]})}var j=t(12723),f=t(4035),v=t(69386),N=t(37665);let p=["hsl(var(--chart-1))","hsl(var(--chart-2))"];function k(e){let{reads:s,writes:t}=e,a=[{name:"Reads",value:s},{name:"Writes",value:t}];return 0===s+t?(0,r.jsxs)(l.Zp,{children:[(0,r.jsx)(l.aR,{children:(0,r.jsx)(l.ZB,{className:"text-sm",children:"Read vs Write Split"})}),(0,r.jsx)(l.Wu,{children:(0,r.jsx)("p",{className:"text-sm text-muted-foreground",children:"No data"})})]}):(0,r.jsxs)(l.Zp,{children:[(0,r.jsx)(l.aR,{children:(0,r.jsx)(l.ZB,{className:"text-sm",children:"Read vs Write Split"})}),(0,r.jsx)(l.Wu,{children:(0,r.jsx)(d.u,{width:"100%",height:200,children:(0,r.jsxs)(j.r,{children:[(0,r.jsx)(f.Fq,{data:a,cx:"50%",cy:"50%",innerRadius:50,outerRadius:75,dataKey:"value",strokeWidth:2,stroke:"hsl(var(--card))",children:a.map((e,s)=>(0,r.jsx)(v.f,{fill:p[s]},"cell-".concat(s)))}),(0,r.jsx)(m.m,{formatter:e=>[(0,i.aT)(Number(e)),""],contentStyle:{backgroundColor:"hsl(var(--card))",border:"1px solid hsl(var(--border))",borderRadius:"6px",color:"hsl(var(--foreground))"}}),(0,r.jsx)(N.s,{formatter:e=>(0,r.jsx)("span",{className:"text-xs text-foreground",children:e})})]})})})]})}var b=t(35161),y=t(78928);function w(e){let{sessions:s}=e;if(0===s.length)return(0,r.jsxs)(l.Zp,{children:[(0,r.jsx)(l.aR,{children:(0,r.jsx)(l.ZB,{className:"text-sm",children:"Cumulative Usage & Savings"})}),(0,r.jsx)(l.Wu,{children:(0,r.jsx)("p",{className:"text-sm text-muted-foreground",children:"No sessions recorded yet"})})]});let t=0,a=0,n=s.map((e,s)=>{var r,l,n;return t+=null!=(l=null==(r=e.totals)?void 0:r.estimatedTokens)?l:0,a+=null!=(n=e.estimatedSavings)?n:0,{name:"S".concat(s+1),tokens:t,savings:a}});return 1===s.length?(0,r.jsxs)(l.Zp,{children:[(0,r.jsx)(l.aR,{children:(0,r.jsx)(l.ZB,{className:"text-sm",children:"Cumulative Usage & Savings"})}),(0,r.jsxs)(l.Wu,{children:[(0,r.jsxs)("div",{className:"flex justify-center gap-8 py-6",children:[(0,r.jsxs)("div",{className:"text-center",children:[(0,r.jsx)("div",{className:"text-2xl font-bold",style:{color:"hsl(var(--chart-1))"},children:(0,i.aT)(n[0].tokens)}),(0,r.jsx)("div",{className:"text-xs text-muted-foreground mt-1",children:"Cumulative Tokens"})]}),(0,r.jsxs)("div",{className:"text-center",children:[(0,r.jsx)("div",{className:"text-2xl font-bold",style:{color:"hsl(var(--chart-2))"},children:(0,i.aT)(n[0].savings)}),(0,r.jsx)("div",{className:"text-xs text-muted-foreground mt-1",children:"Cumulative Savings"})]})]}),(0,r.jsx)("p",{className:"text-sm text-muted-foreground text-center",children:"Trend chart appears after 2+ sessions"})]})]}):(0,r.jsxs)(l.Zp,{children:[(0,r.jsx)(l.aR,{children:(0,r.jsx)(l.ZB,{className:"text-sm",children:"Cumulative Usage & Savings"})}),(0,r.jsx)(l.Wu,{children:(0,r.jsx)(d.u,{width:"100%",height:240,children:(0,r.jsxs)(b.X,{data:n,children:[(0,r.jsx)(c.d,{strokeDasharray:"3 3",className:"stroke-border"}),(0,r.jsx)(u.W,{dataKey:"name",tick:{fontSize:11},className:"fill-muted-foreground",interval:n.length>15?Math.ceil(n.length/15):0}),(0,r.jsx)(x.h,{tick:{fontSize:11},className:"fill-muted-foreground",tickFormatter:i.aT}),(0,r.jsx)(m.m,{formatter:(e,s)=>[(0,i.aT)(Number(e)),"tokens"===s?"Cumulative Tokens":"Cumulative Savings"],contentStyle:{backgroundColor:"hsl(var(--card))",border:"1px solid hsl(var(--border))",borderRadius:"6px",color:"hsl(var(--foreground))"}}),(0,r.jsx)(N.s,{formatter:e=>(0,r.jsx)("span",{className:"text-xs text-foreground",children:"tokens"===e?"Cumulative Tokens":"Cumulative Savings"})}),(0,r.jsx)(y.Gk,{type:"monotone",dataKey:"tokens",fill:"hsl(var(--chart-1))",fillOpacity:.1,stroke:"hsl(var(--chart-1))",strokeWidth:2}),(0,r.jsx)(y.Gk,{type:"monotone",dataKey:"savings",fill:"hsl(var(--chart-2))",fillOpacity:.1,stroke:"hsl(var(--chart-2))",strokeWidth:2})]})})})]})}var S=t(48055),R=t(1524),W=t(80534),Z=t(50906);function T(){var e,s,t,d,o,c,u,x;let m=(0,a.f)(e=>e.ledger);if(!m)return(0,r.jsxs)("div",{className:"space-y-6",children:[(0,r.jsx)("div",{className:"grid gap-4 sm:grid-cols-2 lg:grid-cols-4",children:Array.from({length:4}).map((e,s)=>(0,r.jsx)(n.E,{className:"h-24"},s))}),(0,r.jsx)(n.E,{className:"h-64"})]});let h=m.lifetime,j=null!=(e=m.sessions)?e:[],f=(null!=(s=h.totalReads)?s:0)+(null!=(t=h.totalWrites)?t:0),v=f>0?(h.totalReads/f*100).toFixed(0):"—",N=f>0?(h.totalWrites/f*100).toFixed(0):"—";return(0,r.jsxs)("div",{className:"space-y-6",children:[(0,r.jsxs)("div",{className:"grid gap-4 sm:grid-cols-2 lg:grid-cols-4",children:[(0,r.jsxs)(l.Zp,{children:[(0,r.jsxs)(l.aR,{className:"flex flex-row items-center justify-between pb-2",children:[(0,r.jsx)(l.ZB,{className:"text-sm font-medium text-muted-foreground",children:"Lifetime Tokens"}),(0,r.jsx)(S.A,{className:"h-4 w-4 text-muted-foreground"})]}),(0,r.jsx)(l.Wu,{children:(0,r.jsx)("div",{className:"text-2xl font-bold",children:(0,i.aT)(null!=(d=h.totalTokens)?d:0)})})]}),(0,r.jsxs)(l.Zp,{children:[(0,r.jsxs)(l.aR,{className:"flex flex-row items-center justify-between pb-2",children:[(0,r.jsx)(l.ZB,{className:"text-sm font-medium text-muted-foreground",children:"Est. Savings"}),(0,r.jsx)(R.A,{className:"h-4 w-4 text-muted-foreground"})]}),(0,r.jsx)(l.Wu,{children:(0,r.jsx)("div",{className:"text-2xl font-bold",children:(0,i.aT)(null!=(o=h.totalEstimatedSavings)?o:0)})})]}),(0,r.jsxs)(l.Zp,{children:[(0,r.jsxs)(l.aR,{className:"flex flex-row items-center justify-between pb-2",children:[(0,r.jsx)(l.ZB,{className:"text-sm font-medium text-muted-foreground",children:"Read / Write Ratio"}),(0,r.jsx)(W.A,{className:"h-4 w-4 text-muted-foreground"})]}),(0,r.jsx)(l.Wu,{children:(0,r.jsxs)("div",{className:"text-2xl font-bold",children:[v,"% / ",N,"%"]})})]}),(0,r.jsxs)(l.Zp,{children:[(0,r.jsxs)(l.aR,{className:"flex flex-row items-center justify-between pb-2",children:[(0,r.jsx)(l.ZB,{className:"text-sm font-medium text-muted-foreground",children:"Sessions Tracked"}),(0,r.jsx)(Z.A,{className:"h-4 w-4 text-muted-foreground"})]}),(0,r.jsx)(l.Wu,{children:(0,r.jsx)("div",{className:"text-2xl font-bold",children:null!=(c=h.totalSessions)?c:0})})]})]}),(0,r.jsxs)("div",{className:"grid gap-6 lg:grid-cols-2",children:[(0,r.jsx)(g,{sessions:j}),(0,r.jsx)(k,{reads:null!=(u=h.totalReads)?u:0,writes:null!=(x=h.totalWrites)?x:0})]}),(0,r.jsx)(w,{sessions:j})]})}function C(){return(0,r.jsx)(T,{})}},68122:(e,s,t)=>{"use strict";t.d(s,{E:()=>l});var r=t(95155),a=t(25016);function l(e){let{className:s,...t}=e;return(0,r.jsx)("div",{"data-slot":"skeleton",className:(0,a.cn)("animate-pulse rounded-md bg-accent",s),...t})}},83209:(e,s,t)=>{"use strict";t.d(s,{Wu:()=>d,ZB:()=>i,Zp:()=>l,aR:()=>n});var r=t(95155);t(12115);var a=t(25016);function l(e){let{className:s,...t}=e;return(0,r.jsx)("div",{"data-slot":"card",className:(0,a.cn)("flex flex-col gap-6 rounded-xl border bg-card py-6 text-card-foreground shadow-sm",s),...t})}function n(e){let{className:s,...t}=e;return(0,r.jsx)("div",{"data-slot":"card-header",className:(0,a.cn)("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",s),...t})}function i(e){let{className:s,...t}=e;return(0,r.jsx)("div",{"data-slot":"card-title",className:(0,a.cn)("leading-none font-semibold",s),...t})}function d(e){let{className:s,...t}=e;return(0,r.jsx)("div",{"data-slot":"card-content",className:(0,a.cn)("px-6",s),...t})}},83928:(e,s,t)=>{"use strict";t.d(s,{f:()=>r});let r=(0,t(25959).v)(e=>({connected:!1,projects:[],activeProjectId:null,overview:null,ledger:null,fileIndex:null,tasks:[],taskDefinitions:[],deadLetters:[],health:null,learningMemory:null,actionLog:[],bugs:[],wasteFlags:[],designImages:[],setConnected:s=>e({connected:s}),setProjects:(s,t)=>e({projects:s,activeProjectId:t}),setActiveProject:s=>e({activeProjectId:s,overview:null,ledger:null,fileIndex:null,tasks:[],taskDefinitions:[],deadLetters:[],health:null,learningMemory:null,actionLog:[],bugs:[],wasteFlags:[],designImages:[]}),setOverview:s=>e({overview:s}),setLedger:s=>{var t;return e({ledger:s,wasteFlags:null!=(t=s.wasteFlags)?t:[]})},setFileIndex:s=>e({fileIndex:s}),setScheduler:(s,t,r)=>e({tasks:s,taskDefinitions:t,deadLetters:r}),setHealth:s=>e({health:s}),setLearningMemory:s=>e({learningMemory:s}),setActionLog:s=>e({actionLog:s}),setBugs:s=>e({bugs:s}),setWasteFlags:s=>e({wasteFlags:s}),setDesignImages:s=>e({designImages:s})}))},89011:(e,s,t)=>{Promise.resolve().then(t.bind(t,49714))}},e=>{e.O(0,[160,845,441,255,358],()=>e(e.s=89011)),_N_E=e.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[492],{24585:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"styles",{enumerable:!0,get:function(){return l}});let l={error:{fontFamily:'system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji"',height:"100vh",textAlign:"center",display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center"},desc:{display:"inline-block"},h1:{display:"inline-block",margin:"0 20px 0 0",padding:"0 23px 0 0",fontSize:24,fontWeight:500,verticalAlign:"top",lineHeight:"49px"},h2:{fontSize:14,fontWeight:400,lineHeight:"49px",margin:0}};("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),e.exports=t.default)},38886:(e,t,l)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"HTTPAccessErrorFallback",{enumerable:!0,get:function(){return o}});let r=l(95155),n=l(24585);function o(e){let{status:t,message:l}=e;return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("title",{children:t+": "+l}),(0,r.jsx)("div",{style:n.styles.error,children:(0,r.jsxs)("div",{children:[(0,r.jsx)("style",{dangerouslySetInnerHTML:{__html:"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}),(0,r.jsx)("h1",{className:"next-error-h1",style:n.styles.h1,children:t}),(0,r.jsx)("div",{style:n.styles.desc,children:(0,r.jsx)("h2",{style:n.styles.h2,children:l})})]})})]})}("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),e.exports=t.default)},79520:(e,t,l)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return o}});let r=l(95155),n=l(38886),o=function(){return(0,r.jsx)("html",{children:(0,r.jsx)("body",{children:(0,r.jsx)(n.HTTPAccessErrorFallback,{status:404,message:"This page could not be found."})})})};("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),e.exports=t.default)},80436:(e,t,l)=>{(window.__NEXT_P=window.__NEXT_P||[]).push(["/_not-found/page",function(){return l(79520)}])}},e=>{e.O(0,[441,255,358],()=>e(e.s=80436)),_N_E=e.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[177],{2327:(e,t,n)=>{"use strict";async function r(e,t){let n=t?"".concat(e).concat(e.includes("?")?"&":"?","project=").concat(encodeURIComponent(t)):e,r=await fetch(n);if(!r.ok)throw Error("API error ".concat(r.status,": ").concat(e));return r.json()}function s(){return r("/api/projects")}function a(e){return r("/api/overview",e)}function o(e){return r("/api/token-ledger",e)}function i(e){return r("/api/file-index",e)}function c(e){return r("/api/scheduler",e)}function l(e){return r("/api/learning-memory",e)}function d(e){return r("/api/action-log",e)}function u(e){return r("/api/bugs",e)}function h(e){return r("/api/design",e)}async function g(e){return(await fetch("/api/switch-project",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({projectId:e})})).json()}async function f(e,t){let n=t?"?project=".concat(encodeURIComponent(t)):"";return(await fetch("/api/tasks/".concat(encodeURIComponent(e),"/run").concat(n),{method:"POST"})).json()}async function m(e,t){let n=t?"?project=".concat(encodeURIComponent(t)):"";return(await fetch("/api/dead-letter/".concat(encodeURIComponent(e),"/retry").concat(n),{method:"POST"})).json()}async function v(e){let t=e?"?project=".concat(encodeURIComponent(e)):"";return(await fetch("/api/rescan".concat(t),{method:"POST"})).json()}n.d(t,{EP:()=>a,MP:()=>u,P:()=>f,Vo:()=>o,Z4:()=>m,co:()=>l,e2:()=>c,hD:()=>v,hY:()=>h,pu:()=>d,vj:()=>s,xl:()=>i,yP:()=>g})},15127:(e,t,n)=>{"use strict";n.d(t,{Header:()=>P});var r=n(95155),s=n(5379),a=n(59427),o=n(37494),i=n(97003),c=n(83928),l=n(25016);function d(){let e=(0,c.f)(e=>e.connected);return(0,r.jsxs)("div",{className:"flex items-center gap-2 text-xs",children:[(0,r.jsx)("div",{className:(0,l.cn)("h-2 w-2 rounded-full",e?"bg-green-500":"bg-red-500 animate-pulse")}),(0,r.jsx)("span",{className:"text-muted-foreground",children:e?"Connected":"Disconnected"})]})}var u=n(2327),h=n(42301);n(12115);var g=n(24033),f=n(5917),m=n(12108),v=n(86997);function p(e){let{...t}=e;return(0,r.jsx)(v.bL,{"data-slot":"select",...t})}function x(e){let{...t}=e;return(0,r.jsx)(v.WT,{"data-slot":"select-value",...t})}function b(e){let{className:t,size:n="default",children:s,...a}=e;return(0,r.jsxs)(v.l9,{"data-slot":"select-trigger","data-size":n,className:(0,l.cn)("flex w-fit items-center justify-between gap-2 rounded-md border border-input bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 data-[placeholder]:text-muted-foreground data-[size=default]:h-9 data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 dark:bg-input/30 dark:hover:bg-input/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground",t),...a,children:[s,(0,r.jsx)(v.In,{asChild:!0,children:(0,r.jsx)(g.A,{className:"size-4 opacity-50"})})]})}function j(e){let{className:t,children:n,position:s="item-aligned",align:a="center",...o}=e;return(0,r.jsx)(v.ZL,{children:(0,r.jsxs)(v.UC,{"data-slot":"select-content",className:(0,l.cn)("relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border bg-popover text-popover-foreground shadow-md data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95","popper"===s&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",t),position:s,align:a,...o,children:[(0,r.jsx)(y,{}),(0,r.jsx)(v.LM,{className:(0,l.cn)("p-1","popper"===s&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1"),children:n}),(0,r.jsx)(k,{})]})})}function w(e){let{className:t,children:n,...s}=e;return(0,r.jsxs)(v.q7,{"data-slot":"select-item",className:(0,l.cn)("relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2",t),...s,children:[(0,r.jsx)("span",{"data-slot":"select-item-indicator",className:"absolute right-2 flex size-3.5 items-center justify-center",children:(0,r.jsx)(v.VF,{children:(0,r.jsx)(f.A,{className:"size-4"})})}),(0,r.jsx)(v.p4,{children:n})]})}function y(e){let{className:t,...n}=e;return(0,r.jsx)(v.PP,{"data-slot":"select-scroll-up-button",className:(0,l.cn)("flex cursor-default items-center justify-center py-1",t),...n,children:(0,r.jsx)(m.A,{className:"size-4"})})}function k(e){let{className:t,...n}=e;return(0,r.jsx)(v.wn,{"data-slot":"select-scroll-down-button",className:(0,l.cn)("flex cursor-default items-center justify-center py-1",t),...n,children:(0,r.jsx)(g.A,{className:"size-4"})})}function N(){let e=(0,c.f)(e=>e.projects),t=(0,c.f)(e=>e.activeProjectId),n=(0,c.f)(e=>{var t,n;return null==(n=e.overview)||null==(t=n.project)?void 0:t.name}),s=(0,c.f)(e=>e.setActiveProject);if(e.length<=1){var a,o,i;return(0,r.jsx)("h1",{className:"text-sm font-medium",children:null!=(i=null!=(o=null==(a=e[0])?void 0:a.name)?o:n)?i:"Mink"})}async function l(e){e!==t&&(s(e),await (0,u.yP)(e),(0,h.g)())}return(0,r.jsxs)(p,{value:null!=t?t:void 0,onValueChange:l,children:[(0,r.jsx)(b,{size:"sm",className:"border-none bg-transparent shadow-none gap-1.5",children:(0,r.jsx)(x,{placeholder:"Select project"})}),(0,r.jsx)(j,{children:e.map(e=>(0,r.jsx)(w,{value:e.id,children:(0,r.jsxs)("div",{className:"flex flex-col",children:[(0,r.jsx)("span",{children:e.name}),(0,r.jsx)("span",{className:"text-xs text-muted-foreground",children:function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:40;return e.length<=t?e:"..."+e.slice(e.length-t+3)}(e.cwd)})]})},e.id))})]})}function P(){let{theme:e,setTheme:t}=(0,s.D)();return(0,r.jsxs)("header",{className:"flex h-12 items-center justify-between border-b border-border bg-card px-4",children:[(0,r.jsx)("div",{className:"flex items-center gap-3",children:(0,r.jsx)(N,{})}),(0,r.jsxs)("div",{className:"flex items-center gap-4",children:[(0,r.jsx)(d,{}),(0,r.jsxs)(i.$,{variant:"ghost",size:"icon",className:"h-8 w-8",onClick:()=>t("dark"===e?"light":"dark"),children:[(0,r.jsx)(a.A,{className:"h-4 w-4 rotate-0 scale-100 transition-all dark:-rotate-90 dark:scale-0"}),(0,r.jsx)(o.A,{className:"absolute h-4 w-4 rotate-90 scale-0 transition-all dark:rotate-0 dark:scale-100"}),(0,r.jsx)("span",{className:"sr-only",children:"Toggle theme"})]})]})]})}},25016:(e,t,n)=>{"use strict";n.d(t,{cn:()=>a});var r=n(2821),s=n(75889);function a(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];return(0,s.QP)((0,r.$)(t))}},35753:(e,t,n)=>{Promise.resolve().then(n.t.bind(n,41290,23)),Promise.resolve().then(n.bind(n,15127)),Promise.resolve().then(n.bind(n,67757)),Promise.resolve().then(n.bind(n,82800)),Promise.resolve().then(n.bind(n,5379))},41290:()=>{},42301:(e,t,n)=>{"use strict";n.d(t,{g:()=>c,h:()=>l});var r=n(12115),s=n(83928),a=n(2327);function o(e){var t;let n=[];for(let r of null!=(t=null==e?void 0:e.sessions)?t:[])for(let e of(r.content||"").split("\n")){if(!e.startsWith("|")||e.includes("---"))continue;let t=e.split("|").map(e=>e.trim()).filter(Boolean);t.length>=5&&"Time"!==t[0]&&n.push({time:t[0],action:t[1],files:t[2],outcome:t[3],tokens:t[4]})}return n}function i(e){let t=e.tasks||[],n=t.map(e=>e.state).filter(Boolean),r=t.map(e=>e.definition).filter(Boolean),a=e.deadLetterQueue||[];s.f.getState().setScheduler(n,r,a)}function c(){var e;let t=s.f.getState(),n=null!=(e=t.activeProjectId)?e:void 0;(0,a.EP)(n).then(e=>{var n,r;t.setOverview(e),(null==(n=e.daemon)?void 0:n.running)?t.setHealth({uptimeMs:null!=(r=e.daemon.uptimeMs)?r:0}):t.setHealth(null)}).catch(console.warn),(0,a.Vo)(n).then(t.setLedger).catch(console.warn),(0,a.xl)(n).then(t.setFileIndex).catch(console.warn),(0,a.e2)(n).then(i).catch(console.warn),(0,a.co)(n).then(t.setLearningMemory).catch(console.warn),(0,a.pu)(n).then(e=>t.setActionLog(o(e))).catch(console.warn),(0,a.MP)(n).then(e=>t.setBugs(e.entries||[])).catch(console.warn),(0,a.hY)(n).then(e=>t.setDesignImages(e.images)).catch(console.warn)}function l(){let e=(0,r.useRef)(1e3),t=(0,r.useRef)(null),n=(0,r.useRef)(null);(0,r.useEffect)(()=>((function r(){n.current&&n.current.close();let l=new EventSource("/api/events");n.current=l,l.onopen=()=>{e.current=1e3,s.f.getState().setConnected(!0),(0,a.vj)().then(e=>{s.f.getState().setProjects(e.projects,e.activeProjectId),c()}).catch(e=>{console.warn("[mink] Failed to fetch projects:",e),c()})},l.onmessage=e=>{try{let t=JSON.parse(e.data);if("keepalive"===t.type)return;!function(e){var t;let n=s.f.getState(),r=e.fileId||e.type,l=null!=(t=n.activeProjectId)?t:void 0;if("project-switched"===r&&e.projectId){n.activeProjectId!==e.projectId&&(n.setActiveProject(e.projectId),c());return}switch(r){case"token-ledger":(0,a.Vo)(l).then(n.setLedger).catch(console.warn);break;case"file-index":(0,a.xl)(l).then(n.setFileIndex).catch(console.warn);break;case"scheduler-manifest":(0,a.e2)(l).then(i).catch(console.warn);break;case"learning-memory":(0,a.co)(l).then(n.setLearningMemory).catch(console.warn);break;case"action-log":(0,a.pu)(l).then(e=>n.setActionLog(o(e))).catch(console.warn);break;case"bug-memory":(0,a.MP)(l).then(e=>n.setBugs(e.entries||[])).catch(console.warn);break;case"session":(0,a.EP)(l).then(e=>{var t,r;n.setOverview(e),(null==(t=e.daemon)?void 0:t.running)?n.setHealth({uptimeMs:null!=(r=e.daemon.uptimeMs)?r:0}):n.setHealth(null)}).catch(console.warn);break;case"design-report":(0,a.hY)(l).then(e=>n.setDesignImages(e.images)).catch(console.warn);break;default:c()}}(t)}catch(e){console.warn("[mink] SSE parse error:",e)}},l.onerror=()=>{s.f.getState().setConnected(!1),l.close(),n.current=null,t.current&&clearTimeout(t.current),t.current=setTimeout(()=>{e.current=Math.min(2*e.current,3e4),r()},e.current)}})(),()=>{n.current&&(n.current.close(),n.current=null),t.current&&clearTimeout(t.current)}),[])}},67757:(e,t,n)=>{"use strict";n.d(t,{Sidebar:()=>b});var r=n(95155),s=n(52619),a=n.n(s),o=n(20063),i=n(59384),c=n(50906),l=n(48055),d=n(29502),u=n(1473),h=n(84114),g=n(57434),f=n(46927),m=n(17666),v=n(42196),p=n(25016);let x=[{href:"/overview",label:"Overview",icon:i.A},{href:"/activity",label:"Activity",icon:c.A},{href:"/tokens",label:"Token Intelligence",icon:l.A},{href:"/scheduler",label:"Scheduler",icon:d.A},{href:"/learning",label:"Learning Memory",icon:u.A},{href:"/action-log",label:"Action Log",icon:h.A},{href:"/file-index",label:"File Index",icon:g.A},{href:"/bugs",label:"Bug Log",icon:f.A},{href:"/insights",label:"AI Insights",icon:m.A},{href:"/design",label:"Design Eval",icon:v.A}];function b(){let e=(0,o.usePathname)();return(0,r.jsxs)("aside",{className:"flex h-full w-56 flex-col border-r border-border bg-card",children:[(0,r.jsxs)("div",{className:"flex items-center gap-2 border-b border-border px-4 py-4",children:[(0,r.jsx)("div",{className:"flex h-7 w-7 items-center justify-center rounded-md bg-primary text-primary-foreground text-sm font-bold",children:"M"}),(0,r.jsx)("span",{className:"text-sm font-semibold tracking-tight",children:"Mink"})]}),(0,r.jsx)("nav",{className:"flex-1 overflow-y-auto px-2 py-2",children:x.map(t=>{let n=e===t.href||"/overview"===t.href&&"/"===e;return(0,r.jsxs)(a(),{href:t.href,className:(0,p.cn)("flex items-center gap-2 rounded-md px-3 py-2 text-sm transition-colors",n?"bg-accent text-accent-foreground font-medium":"text-muted-foreground hover:bg-accent hover:text-accent-foreground"),children:[(0,r.jsx)(t.icon,{className:"h-4 w-4 shrink-0"}),(0,r.jsx)("span",{className:"truncate",children:t.label})]},t.href)})})]})}},82800:(e,t,n)=>{"use strict";n.d(t,{SSEProvider:()=>s});var r=n(42301);function s(){return(0,r.h)(),null}},83928:(e,t,n)=>{"use strict";n.d(t,{f:()=>r});let r=(0,n(25959).v)(e=>({connected:!1,projects:[],activeProjectId:null,overview:null,ledger:null,fileIndex:null,tasks:[],taskDefinitions:[],deadLetters:[],health:null,learningMemory:null,actionLog:[],bugs:[],wasteFlags:[],designImages:[],setConnected:t=>e({connected:t}),setProjects:(t,n)=>e({projects:t,activeProjectId:n}),setActiveProject:t=>e({activeProjectId:t,overview:null,ledger:null,fileIndex:null,tasks:[],taskDefinitions:[],deadLetters:[],health:null,learningMemory:null,actionLog:[],bugs:[],wasteFlags:[],designImages:[]}),setOverview:t=>e({overview:t}),setLedger:t=>{var n;return e({ledger:t,wasteFlags:null!=(n=t.wasteFlags)?n:[]})},setFileIndex:t=>e({fileIndex:t}),setScheduler:(t,n,r)=>e({tasks:t,taskDefinitions:n,deadLetters:r}),setHealth:t=>e({health:t}),setLearningMemory:t=>e({learningMemory:t}),setActionLog:t=>e({actionLog:t}),setBugs:t=>e({bugs:t}),setWasteFlags:t=>e({wasteFlags:t}),setDesignImages:t=>e({designImages:t})}))},97003:(e,t,n)=>{"use strict";n.d(t,{$:()=>c});var r=n(95155);n(12115);var s=n(83101),a=n(32467),o=n(25016);let i=(0,s.F)("inline-flex shrink-0 items-center justify-center gap-2 rounded-md text-sm font-medium whitespace-nowrap transition-all outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:bg-destructive/60 dark:focus-visible:ring-destructive/40",outline:"border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:border-input dark:bg-input/30 dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2 has-[>svg]:px-3",xs:"h-6 gap-1 rounded-md px-2 text-xs has-[>svg]:px-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-8 gap-1.5 rounded-md px-3 has-[>svg]:px-2.5",lg:"h-10 rounded-md px-6 has-[>svg]:px-4",icon:"size-9","icon-xs":"size-6 rounded-md [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-8","icon-lg":"size-10"}},defaultVariants:{variant:"default",size:"default"}});function c(e){let{className:t,variant:n="default",size:s="default",asChild:c=!1,...l}=e,d=c?a.bL:"button";return(0,r.jsx)(d,{"data-slot":"button","data-variant":n,"data-size":s,className:(0,o.cn)(i({variant:n,size:s,className:t})),...l})}}},e=>{e.O(0,[741,160,717,692,752,441,255,358],()=>e(e.s=35753)),_N_E=e.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[974],{20063:(e,u,t)=>{"use strict";var r=t(47260);t.o(r,"usePathname")&&t.d(u,{usePathname:function(){return r.usePathname}}),t.o(r,"useRouter")&&t.d(u,{useRouter:function(){return r.useRouter}})},37322:(e,u,t)=>{"use strict";t.r(u),t.d(u,{default:()=>n});var r=t(12115),s=t(20063);function n(){let e=(0,s.useRouter)();return(0,r.useEffect)(()=>{e.replace("/overview")},[e]),null}},72365:(e,u,t)=>{Promise.resolve().then(t.bind(t,37322))}},e=>{e.O(0,[441,255,358],()=>e(e.s=72365)),_N_E=e.O()}]);