@aoagents/ao-web 0.4.0 → 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 (181) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-build-manifest.json +141 -141
  3. package/.next/app-path-routes-manifest.json +6 -6
  4. package/.next/build-manifest.json +6 -6
  5. package/.next/prerender-manifest.json +31 -31
  6. package/.next/react-loadable-manifest.json +3 -3
  7. package/.next/required-server-files.json +3 -3
  8. package/.next/server/app/_not-found/page.js +2 -2
  9. package/.next/server/app/_not-found/page.js.nft.json +1 -1
  10. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  11. package/.next/server/app/_not-found.html +1 -1
  12. package/.next/server/app/_not-found.rsc +7 -7
  13. package/.next/server/app/api/backlog/route.js +1 -1
  14. package/.next/server/app/api/backlog/route.js.nft.json +1 -1
  15. package/.next/server/app/api/backlog/route_client-reference-manifest.js +1 -1
  16. package/.next/server/app/api/browse-directory/route.js +1 -1
  17. package/.next/server/app/api/browse-directory/route_client-reference-manifest.js +1 -1
  18. package/.next/server/app/api/filesystem/browse/route.js +1 -1
  19. package/.next/server/app/api/filesystem/browse/route_client-reference-manifest.js +1 -1
  20. package/.next/server/app/api/issues/route.js +1 -1
  21. package/.next/server/app/api/issues/route.js.nft.json +1 -1
  22. package/.next/server/app/api/issues/route_client-reference-manifest.js +1 -1
  23. package/.next/server/app/api/observability/route.js +1 -1
  24. package/.next/server/app/api/observability/route.js.nft.json +1 -1
  25. package/.next/server/app/api/observability/route_client-reference-manifest.js +1 -1
  26. package/.next/server/app/api/orchestrators/route.js +1 -1
  27. package/.next/server/app/api/orchestrators/route.js.nft.json +1 -1
  28. package/.next/server/app/api/orchestrators/route_client-reference-manifest.js +1 -1
  29. package/.next/server/app/api/projects/[id]/route.js +1 -1
  30. package/.next/server/app/api/projects/[id]/route.js.nft.json +1 -1
  31. package/.next/server/app/api/projects/[id]/route_client-reference-manifest.js +1 -1
  32. package/.next/server/app/api/projects/reload/route.js +1 -1
  33. package/.next/server/app/api/projects/reload/route.js.nft.json +1 -1
  34. package/.next/server/app/api/projects/reload/route_client-reference-manifest.js +1 -1
  35. package/.next/server/app/api/projects/route.js +1 -1
  36. package/.next/server/app/api/projects/route.js.nft.json +1 -1
  37. package/.next/server/app/api/projects/route_client-reference-manifest.js +1 -1
  38. package/.next/server/app/api/prs/[id]/merge/route.js +1 -1
  39. package/.next/server/app/api/prs/[id]/merge/route.js.nft.json +1 -1
  40. package/.next/server/app/api/prs/[id]/merge/route_client-reference-manifest.js +1 -1
  41. package/.next/server/app/api/runtime/terminal/route.js +1 -1
  42. package/.next/server/app/api/runtime/terminal/route_client-reference-manifest.js +1 -1
  43. package/.next/server/app/api/sessions/[id]/kill/route.js +1 -1
  44. package/.next/server/app/api/sessions/[id]/kill/route.js.nft.json +1 -1
  45. package/.next/server/app/api/sessions/[id]/kill/route_client-reference-manifest.js +1 -1
  46. package/.next/server/app/api/sessions/[id]/message/route.js +1 -1
  47. package/.next/server/app/api/sessions/[id]/message/route.js.nft.json +1 -1
  48. package/.next/server/app/api/sessions/[id]/message/route_client-reference-manifest.js +1 -1
  49. package/.next/server/app/api/sessions/[id]/remap/route.js +1 -1
  50. package/.next/server/app/api/sessions/[id]/remap/route.js.nft.json +1 -1
  51. package/.next/server/app/api/sessions/[id]/remap/route_client-reference-manifest.js +1 -1
  52. package/.next/server/app/api/sessions/[id]/restore/route.js +1 -1
  53. package/.next/server/app/api/sessions/[id]/restore/route.js.nft.json +1 -1
  54. package/.next/server/app/api/sessions/[id]/restore/route_client-reference-manifest.js +1 -1
  55. package/.next/server/app/api/sessions/[id]/route.js +1 -1
  56. package/.next/server/app/api/sessions/[id]/route.js.nft.json +1 -1
  57. package/.next/server/app/api/sessions/[id]/route_client-reference-manifest.js +1 -1
  58. package/.next/server/app/api/sessions/[id]/send/route.js +1 -1
  59. package/.next/server/app/api/sessions/[id]/send/route.js.nft.json +1 -1
  60. package/.next/server/app/api/sessions/[id]/send/route_client-reference-manifest.js +1 -1
  61. package/.next/server/app/api/sessions/patches/route.js +1 -1
  62. package/.next/server/app/api/sessions/patches/route.js.nft.json +1 -1
  63. package/.next/server/app/api/sessions/patches/route_client-reference-manifest.js +1 -1
  64. package/.next/server/app/api/sessions/route.js +1 -1
  65. package/.next/server/app/api/sessions/route.js.nft.json +1 -1
  66. package/.next/server/app/api/sessions/route_client-reference-manifest.js +1 -1
  67. package/.next/server/app/api/setup-labels/route.js +1 -1
  68. package/.next/server/app/api/setup-labels/route.js.nft.json +1 -1
  69. package/.next/server/app/api/setup-labels/route_client-reference-manifest.js +1 -1
  70. package/.next/server/app/api/spawn/route.js +1 -1
  71. package/.next/server/app/api/spawn/route.js.nft.json +1 -1
  72. package/.next/server/app/api/spawn/route_client-reference-manifest.js +1 -1
  73. package/.next/server/app/api/verify/route.js +1 -1
  74. package/.next/server/app/api/verify/route.js.nft.json +1 -1
  75. package/.next/server/app/api/verify/route_client-reference-manifest.js +1 -1
  76. package/.next/server/app/api/webhooks/[...slug]/route.js +1 -1
  77. package/.next/server/app/api/webhooks/[...slug]/route.js.nft.json +1 -1
  78. package/.next/server/app/api/webhooks/[...slug]/route_client-reference-manifest.js +1 -1
  79. package/.next/server/app/apple-icon/route.js +1 -1
  80. package/.next/server/app/apple-icon/route.js.nft.json +1 -1
  81. package/.next/server/app/apple-icon/route_client-reference-manifest.js +1 -1
  82. package/.next/server/app/dev/terminal-test/page.js +4 -4
  83. package/.next/server/app/dev/terminal-test/page.js.nft.json +1 -1
  84. package/.next/server/app/dev/terminal-test/page_client-reference-manifest.js +1 -1
  85. package/.next/server/app/dev/terminal-test.html +1 -1
  86. package/.next/server/app/dev/terminal-test.rsc +8 -8
  87. package/.next/server/app/icon/route.js +1 -1
  88. package/.next/server/app/icon/route.js.nft.json +1 -1
  89. package/.next/server/app/icon/route_client-reference-manifest.js +1 -1
  90. package/.next/server/app/icon-192/route.js +1 -1
  91. package/.next/server/app/icon-192/route.js.nft.json +1 -1
  92. package/.next/server/app/icon-192/route_client-reference-manifest.js +1 -1
  93. package/.next/server/app/icon-512/route.js +1 -1
  94. package/.next/server/app/icon-512/route.js.nft.json +1 -1
  95. package/.next/server/app/icon-512/route_client-reference-manifest.js +1 -1
  96. package/.next/server/app/manifest.webmanifest/route.js +2 -2
  97. package/.next/server/app/manifest.webmanifest/route.js.nft.json +1 -1
  98. package/.next/server/app/manifest.webmanifest/route_client-reference-manifest.js +1 -1
  99. package/.next/server/app/orchestrators/page.js +2 -2
  100. package/.next/server/app/orchestrators/page.js.nft.json +1 -1
  101. package/.next/server/app/orchestrators/page_client-reference-manifest.js +1 -1
  102. package/.next/server/app/page.js +2 -2
  103. package/.next/server/app/page.js.nft.json +1 -1
  104. package/.next/server/app/page_client-reference-manifest.js +1 -1
  105. package/.next/server/app/projects/[projectId]/page.js +2 -2
  106. package/.next/server/app/projects/[projectId]/page.js.nft.json +1 -1
  107. package/.next/server/app/projects/[projectId]/page_client-reference-manifest.js +1 -1
  108. package/.next/server/app/projects/[projectId]/sessions/[id]/page.js +2 -2
  109. package/.next/server/app/projects/[projectId]/sessions/[id]/page.js.nft.json +1 -1
  110. package/.next/server/app/projects/[projectId]/sessions/[id]/page_client-reference-manifest.js +1 -1
  111. package/.next/server/app/projects/[projectId]/settings/page.js +2 -2
  112. package/.next/server/app/projects/[projectId]/settings/page.js.nft.json +1 -1
  113. package/.next/server/app/projects/[projectId]/settings/page_client-reference-manifest.js +1 -1
  114. package/.next/server/app/prs/page.js +2 -2
  115. package/.next/server/app/prs/page.js.nft.json +1 -1
  116. package/.next/server/app/prs/page_client-reference-manifest.js +1 -1
  117. package/.next/server/app/sessions/[id]/page.js +2 -2
  118. package/.next/server/app/sessions/[id]/page.js.nft.json +1 -1
  119. package/.next/server/app/sessions/[id]/page_client-reference-manifest.js +1 -1
  120. package/.next/server/app/test-direct/page.js +2 -2
  121. package/.next/server/app/test-direct/page.js.nft.json +1 -1
  122. package/.next/server/app/test-direct/page_client-reference-manifest.js +1 -1
  123. package/.next/server/app/test-direct.html +1 -1
  124. package/.next/server/app/test-direct.rsc +8 -8
  125. package/.next/server/app-paths-manifest.json +6 -6
  126. package/.next/server/chunks/1172.js +1 -1
  127. package/.next/server/chunks/1271.js +1 -1
  128. package/.next/server/chunks/1876.js +2 -2
  129. package/.next/server/chunks/4520.js +1 -1
  130. package/.next/server/chunks/6811.js +3 -0
  131. package/.next/server/chunks/7167.js +1 -1
  132. package/.next/server/chunks/7173.js +1 -1
  133. package/.next/server/chunks/801.js +658 -0
  134. package/.next/server/chunks/9223.js +11 -11
  135. package/.next/server/middleware-build-manifest.js +1 -1
  136. package/.next/server/middleware-react-loadable-manifest.js +1 -1
  137. package/.next/server/pages/404.html +1 -1
  138. package/.next/server/pages/500.html +1 -1
  139. package/.next/server/server-reference-manifest.json +1 -1
  140. package/.next/static/chunks/{1383.faf35b62c555f5a1.js → 1383.8f5f7d4606d356cc.js} +1 -1
  141. package/.next/static/chunks/3764.88619fb0d047cae8.js +1 -0
  142. package/.next/static/chunks/{3780-e20898ff49ddc867.js → 3780-52c4733ce6591b8d.js} +1 -1
  143. package/.next/static/chunks/{4465-0c7772f1499dffa4.js → 4465-17154f7a01abfe85.js} +1 -1
  144. package/.next/static/chunks/app/dev/terminal-test/page-59decd1aad4e02ad.js +1 -0
  145. package/.next/static/chunks/app/{error-3ebcf3275d91d60a.js → error-684a1c5596fa1e14.js} +1 -1
  146. package/.next/static/chunks/app/global-error-1a79bacfbd9b1ba4.js +1 -0
  147. package/.next/static/chunks/app/layout-0cda720d75f111b8.js +1 -0
  148. package/.next/static/chunks/app/not-found-315f4e5c106b425d.js +1 -0
  149. package/.next/static/chunks/app/orchestrators/page-e3a2c53b57dd8391.js +1 -0
  150. package/.next/static/chunks/app/page-e2e589ea11a0780a.js +1 -0
  151. package/.next/static/chunks/app/projects/[projectId]/page-19a6d4cc9951a9e4.js +1 -0
  152. package/.next/static/chunks/app/projects/[projectId]/sessions/[id]/page-75c536c9755754f7.js +1 -0
  153. package/.next/static/chunks/app/projects/[projectId]/settings/{page-ce2e904def1bef9c.js → page-f8c323b91978efff.js} +1 -1
  154. package/.next/static/chunks/app/prs/page-08f17d7dc341b6f1.js +1 -0
  155. package/.next/static/chunks/app/sessions/[id]/{error-5468aace23fd8872.js → error-62e9972b39d9cd16.js} +1 -1
  156. package/.next/static/chunks/app/sessions/[id]/not-found-315f4e5c106b425d.js +1 -0
  157. package/.next/static/chunks/app/sessions/[id]/page-d0b08722dec5a04a.js +1 -0
  158. package/.next/static/chunks/app/test-direct/{page-ab98dc9b04bacaa5.js → page-ee0944bcd355194e.js} +1 -1
  159. package/.next/static/chunks/main-app-b95f197c38e3b0a3.js +1 -0
  160. package/.next/static/chunks/{webpack-ab12779265bdb8f9.js → webpack-83d2d8248a30259c.js} +1 -1
  161. package/.next/static/css/cf9226160e230bf4.css +1 -0
  162. package/dist-server/mux-websocket.js +49 -7
  163. package/package.json +12 -12
  164. package/.next/server/chunks/8539.js +0 -3
  165. package/.next/server/chunks/9381.js +0 -658
  166. package/.next/static/chunks/3764.ba81c7b8d5b21136.js +0 -1
  167. package/.next/static/chunks/app/dev/terminal-test/page-095511c7a110fbc9.js +0 -1
  168. package/.next/static/chunks/app/global-error-8f082029a4cf6af1.js +0 -1
  169. package/.next/static/chunks/app/layout-be776dec5531d47b.js +0 -1
  170. package/.next/static/chunks/app/not-found-0eb78483b8277b8d.js +0 -1
  171. package/.next/static/chunks/app/orchestrators/page-406e530b0d4ad46f.js +0 -1
  172. package/.next/static/chunks/app/page-a92f3646b54545b0.js +0 -1
  173. package/.next/static/chunks/app/projects/[projectId]/page-d14fdcff4998d3bf.js +0 -1
  174. package/.next/static/chunks/app/projects/[projectId]/sessions/[id]/page-96fc04db76c65761.js +0 -1
  175. package/.next/static/chunks/app/prs/page-95dbbebb4d372535.js +0 -1
  176. package/.next/static/chunks/app/sessions/[id]/not-found-0eb78483b8277b8d.js +0 -1
  177. package/.next/static/chunks/app/sessions/[id]/page-8ef744531757185e.js +0 -1
  178. package/.next/static/chunks/main-app-4b27cdf1baf203ad.js +0 -1
  179. package/.next/static/css/397ea3e60645d3f3.css +0 -1
  180. /package/.next/static/{5nmlY5IOwz-Od3p2SB2hh → h0RXs0prE87a8wlbEXQKM}/_buildManifest.js +0 -0
  181. /package/.next/static/{5nmlY5IOwz-Od3p2SB2hh → h0RXs0prE87a8wlbEXQKM}/_ssgManifest.js +0 -0
@@ -1,3 +0,0 @@
1
- exports.id=8539,exports.ids=[8539],exports.modules={586:(a,b,c)=>{Promise.resolve().then(c.bind(c,26400))},2191:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>f}),c(81249),c(13081);var d=c(6181);let e={size:{width:32,height:32},contentType:"image/png"};async function f(a){let{__metadata_id__:b,...c}=await a.params,f=(0,d.fillMetadataSegment)(".",c,"icon"),{generateImageMetadata:g}=e;function h(a,b){let c={alt:a.alt,type:a.contentType||"image/png",url:f+(b?"/"+b:"")+"?fde4afff4688df3a"},{size:d}=a;return d&&(c.sizes=d.width+"x"+d.height),c}return g?(await g({params:c})).map((a,b)=>{let c=(a.id||b)+"";return h(a,c)}):[h(e,"")]}},8556:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>e});var d=c(68844);function e(){return(0,d.jsx)("div",{className:"flex min-h-screen items-center justify-center bg-[var(--color-bg-base)]",children:(0,d.jsxs)("div",{className:"flex flex-col items-center gap-3",children:[(0,d.jsx)("svg",{className:"h-5 w-5 animate-spin text-[var(--color-text-tertiary)]",fill:"none",stroke:"currentColor",strokeWidth:"2",viewBox:"0 0 24 24",children:(0,d.jsx)("path",{d:"M12 3a9 9 0 1 0 9 9"})}),(0,d.jsx)("p",{className:"text-[13px] text-[var(--color-text-tertiary)]",children:"Loading…"})]})})}},13081:(a,b,c)=>{"use strict";c.d(b,{Kk:()=>f,uy:()=>e});var d=c(68844);function e(a){return a.replace(/[^\w\s-]/g,"").slice(0,50)||"AO"}function f(a,b){let c=(b.charAt(0)||"A").toUpperCase(),e=function(a){let b=0;for(let c=0;c<a.length;c++)b=a.charCodeAt(c)+((b<<5)-b);return(b%360+360)%360}(b),f=Math.round(.19*a),g=Math.round(.625*a);return(0,d.jsx)("div",{style:{width:`${a}px`,height:`${a}px`,borderRadius:`${f}px`,background:`hsl(${e}, 60%, 45%)`,display:"flex",alignItems:"center",justifyContent:"center",color:"white",fontSize:`${g}px`,fontWeight:700,fontFamily:"sans-serif"},children:c})}},14944:(a,b,c)=>{Promise.resolve().then(c.bind(c,82834))},16819:(a,b,c)=>{"use strict";c.d(b,{ErrorDisplay:()=>d});let d=(0,c(10864).registerClientReference)(function(){throw Error("Attempted to call ErrorDisplay() from the server but ErrorDisplay is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/Users/equinox/.worktrees/agent-orchestrator/ao-168/packages/web/src/components/ErrorDisplay.tsx","ErrorDisplay")},23041:(a,b,c)=>{"use strict";c.d(b,{ErrorDisplay:()=>j});var d=c(33666),e=c(47489),f=c.n(e);let g={error:{accent:"var(--color-status-error)",bg:"var(--color-tint-red)",border:"color-mix(in srgb, var(--color-status-error) 24%, transparent)",label:"error"},warning:{accent:"var(--color-status-attention)",bg:"var(--color-tint-yellow)",border:"color-mix(in srgb, var(--color-status-attention) 24%, transparent)",label:"warning"},"not-found":{accent:"var(--color-accent)",bg:"var(--color-tint-blue)",border:"color-mix(in srgb, var(--color-accent) 24%, transparent)",label:"missing"}};function h({accent:a}){return(0,d.jsx)("div",{className:"flex h-14 w-14 items-center justify-center rounded-2xl border",style:{background:`linear-gradient(180deg, color-mix(in srgb, ${a} 16%, var(--color-bg-elevated)) 0%, var(--color-bg-surface) 100%)`,borderColor:`color-mix(in srgb, ${a} 18%, var(--color-border-default))`,boxShadow:"var(--detail-card-shadow)"},children:(0,d.jsxs)("svg",{className:"h-7 w-7",fill:"none",stroke:"currentColor",strokeWidth:"1.6",style:{color:a},viewBox:"0 0 24 24",children:[(0,d.jsx)("rect",{x:"2.5",y:"4.5",width:"19",height:"15",rx:"3"}),(0,d.jsx)("path",{d:"M6.5 9.5l3.25 2.5-3.25 2.5M12.75 15h4.75"})]})})}function i({action:a,primary:b=!1}){let c=b?"inline-flex items-center justify-center rounded-full border px-4 py-2 text-[12px] font-semibold transition-colors hover:no-underline":"inline-flex items-center justify-center rounded-full border px-4 py-2 text-[12px] font-medium transition-colors hover:no-underline",e=b?{background:"var(--color-accent)",color:"var(--color-text-inverse)",borderColor:"color-mix(in srgb, var(--color-accent) 72%, transparent)"}:{background:"var(--color-bg-surface)",color:"var(--color-text-secondary)",borderColor:"var(--color-border-default)"};return a.href?(0,d.jsx)(f(),{href:a.href,className:c,style:e,children:a.label}):(0,d.jsx)("button",{type:"button",onClick:a.onClick,className:c,style:e,children:a.label})}function j({title:a,message:b,tone:c="error",detailsTitle:e="Technical details",error:f,primaryAction:j,secondaryAction:k,compact:l=!1,chrome:m="page",children:n}){let o=g[c],p=!!(f?.digest||f?.message||f?.stack);return(0,d.jsx)("div",{className:`flex w-full items-center justify-center px-6 py-10 ${l?"min-h-[calc(100vh-4rem)]":"min-h-screen"}`,style:{background:"page"===m?"radial-gradient(circle at top, var(--color-body-gradient-blue), transparent 35%), var(--color-bg-base)":"transparent"},children:(0,d.jsx)("div",{className:"w-full max-w-[36rem] rounded-[28px] border p-6 sm:p-8",style:{background:"linear-gradient(180deg, color-mix(in srgb, var(--color-bg-elevated) 88%, transparent) 0%, var(--color-bg-surface) 100%)",borderColor:"var(--color-border-default)",boxShadow:"var(--detail-card-shadow)"},children:(0,d.jsxs)("div",{className:"flex flex-col gap-6",children:[(0,d.jsxs)("div",{className:"flex flex-col gap-4 sm:flex-row sm:items-start",children:[(0,d.jsx)(h,{accent:o.accent}),(0,d.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,d.jsx)("div",{className:"mb-3 inline-flex items-center rounded-full border px-2.5 py-1 font-[var(--font-mono)] text-[10px] font-medium uppercase tracking-[0.22em]",style:{color:o.accent,background:o.bg,borderColor:o.border},children:o.label}),(0,d.jsx)("h1",{className:"text-[24px] font-semibold tracking-[-0.04em] text-[var(--color-text-primary)]",children:a}),(0,d.jsx)("p",{className:"mt-2 max-w-[34rem] text-[14px] leading-6 text-[var(--color-text-secondary)]",children:b})]})]}),(j||k)&&(0,d.jsxs)("div",{className:"flex flex-wrap gap-3",children:[j?(0,d.jsx)(i,{action:j,primary:!0}):null,k?(0,d.jsx)(i,{action:k}):null]}),n,p?(0,d.jsxs)("details",{className:"rounded-2xl border",style:{background:"color-mix(in srgb, var(--color-bg-elevated) 84%, transparent)",borderColor:"var(--color-border-subtle)"},children:[(0,d.jsx)("summary",{className:"cursor-pointer list-none px-4 py-3 text-[12px] font-medium text-[var(--color-text-secondary)]",children:e}),(0,d.jsxs)("div",{className:"border-t px-4 py-4",style:{borderColor:"var(--color-border-subtle)"},children:[f?.digest?(0,d.jsxs)("p",{className:"mb-3 font-[var(--font-mono)] text-[11px] text-[var(--color-text-tertiary)]",children:["digest: ",f.digest]}):null,f?.message?(0,d.jsx)("p",{className:"mb-3 text-[12px] leading-5 text-[var(--color-text-secondary)]",children:f.message}):null,f?.stack?(0,d.jsx)("pre",{className:"overflow-x-auto whitespace-pre-wrap font-[var(--font-mono)] text-[11px] leading-5 text-[var(--color-text-tertiary)]",children:f.stack}):null]})]}):null]})})})}},24553:()=>{},24995:(a,b,c)=>{Promise.resolve().then(c.bind(c,16819))},26400:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>f});var d=c(33666);c(81115);var e=c(23041);function f({error:a,reset:b}){return(0,d.jsx)("html",{lang:"en",className:"dark",children:(0,d.jsx)("body",{className:"bg-[var(--color-bg-base)] text-[var(--color-text-primary)] antialiased",children:(0,d.jsx)(e.ErrorDisplay,{title:"Something broke at the app shell",message:"The dashboard could not recover from this error at the layout level. Try again first, then reload the page if it still fails.",tone:"error",primaryAction:{label:"Try again",onClick:b},secondaryAction:{label:"Reload page",onClick:()=>window.location.reload()},error:a})})})}},27926:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>d});let d=(0,c(10864).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/Users/equinox/.worktrees/agent-orchestrator/ao-168/packages/web/src/app/global-error.tsx\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/Users/equinox/.worktrees/agent-orchestrator/ao-168/packages/web/src/app/global-error.tsx","default")},28928:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,8125,23)),Promise.resolve().then(c.t.bind(c,6125,23)),Promise.resolve().then(c.t.bind(c,74148,23)),Promise.resolve().then(c.t.bind(c,10236,23)),Promise.resolve().then(c.t.bind(c,97760,23)),Promise.resolve().then(c.t.bind(c,9528,23)),Promise.resolve().then(c.t.bind(c,20225,23)),Promise.resolve().then(c.bind(c,23240))},37728:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>f}),c(81249),c(13081);var d=c(6181);let e={size:{width:180,height:180},contentType:"image/png"};async function f(a){let{__metadata_id__:b,...c}=await a.params,f=(0,d.fillMetadataSegment)(".",c,"apple-icon"),{generateImageMetadata:g}=e;function h(a,b){let c={alt:a.alt,type:a.contentType||"image/png",url:f+(b?"/"+b:"")+"?95aeb60ec7acf330"},{size:d}=a;return d&&(c.sizes=d.width+"x"+d.height),c}return g?(await g({params:c})).map((a,b)=>{let c=(a.id||b)+"";return h(a,c)}):[h(e,"")]}},39067:(a,b,c)=>{Promise.resolve().then(c.bind(c,23041))},42080:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,57035,23)),Promise.resolve().then(c.t.bind(c,57543,23)),Promise.resolve().then(c.t.bind(c,970,23)),Promise.resolve().then(c.t.bind(c,84702,23)),Promise.resolve().then(c.t.bind(c,18706,23)),Promise.resolve().then(c.t.bind(c,11194,23)),Promise.resolve().then(c.t.bind(c,33151,23)),Promise.resolve().then(c.t.bind(c,75210,23))},44320:(a,b,c)=>{Promise.resolve().then(c.bind(c,89252))},49905:(a,b,c)=>{"use strict";function d(){return null}c.d(b,{ServiceWorkerRegistrar:()=>d}),c(81115)},54947:(a,b,c)=>{Promise.resolve().then(c.bind(c,88496)),Promise.resolve().then(c.bind(c,49905))},58976:(a,b,c)=>{"use strict";c.d(b,{eT:()=>h,i2:()=>j});var d=c(33666),e=c(81115),f=c.n(e);let g=f().createContext(void 0);function h(){return f().useContext(g)}function i(a,b){return b?`${b}:${a}`:a}function j({children:a}){let b=(0,e.useRef)(null),c=(0,e.useRef)(new Map),f=(0,e.useRef)(new Map),[h,j]=(0,e.useState)("connecting"),[k,l]=(0,e.useState)([]),[m,n]=(0,e.useState)(null),o=(0,e.useRef)(0),p=(0,e.useRef)(null),q=(0,e.useRef)({}),r=(0,e.useRef)(!1),s=(0,e.useCallback)(()=>{if(!b.current){j("connecting");try{let a=function(a){let b=window.location,c="https:"===b.protocol?"wss:":"ws:",d=a.proxyWsPath??process.env.NEXT_PUBLIC_TERMINAL_WS_PATH;if(d){let a=d.replace(/\/ws\/?$/,"");return`${c}//${b.host}${a}/mux`}if(""===b.port||"443"===b.port||"80"===b.port)return`${c}//${b.hostname}/ao-terminal-mux`;let e=a.directTerminalPort??process.env.NEXT_PUBLIC_DIRECT_TERMINAL_PORT??"14801";return`${c}//${b.hostname}:${e}/mux`}(q.current);console.log("[MuxProvider] Connecting to",a);let d=new WebSocket(a);b.current=d,d.addEventListener("open",()=>{if(r.current)return void d.close();for(let a of(console.log("[MuxProvider] Connected"),j("connected"),o.current=0,f.current.values())){let b={ch:"terminal",id:a.id,type:"open",...a.projectId&&{projectId:a.projectId},...a.tmuxName&&{tmuxName:a.tmuxName}};d.send(JSON.stringify(b))}d.send(JSON.stringify({ch:"subscribe",topics:["sessions"]}))}),d.addEventListener("message",a=>{try{let b=JSON.parse(a.data);if("terminal"===b.ch){let a=i(b.id,"projectId"in b?b.projectId:void 0);if("data"===b.type){let d=c.current.get(a);if(d)for(let a of d)a(b.data)}else if("opened"===b.type)f.current.has(a)||f.current.set(a,{id:b.id,..."projectId"in b&&b.projectId?{projectId:b.projectId}:{}});else if("exited"===b.type){f.current.delete(a);let d=c.current.get(a);if(d){let a=`\r
2
- \x1b[31m[Terminal exited with code ${b.code}]\x1b[0m\r
3
- `;for(let b of d)b(a)}}else"error"===b.type&&console.error(`[MuxProvider] Terminal error for ${b.id}:`,b.message)}else"sessions"===b.ch&&("snapshot"===b.type?(l(b.sessions),n(null)):"error"===b.type&&n(b.error))}catch(a){console.error("[MuxProvider] Error processing message:",a)}}),d.addEventListener("error",a=>{console.error("[MuxProvider] WebSocket error:",a)}),d.addEventListener("close",()=>{if(console.log("[MuxProvider] Disconnected"),b.current===d&&(b.current=null),r.current)return;let a=Math.min(1e3*Math.pow(2,o.current),3e4);o.current+=1,j("reconnecting"),p.current=setTimeout(()=>{console.log(`[MuxProvider] Reconnecting (attempt ${o.current})...`),s()},a)})}catch(a){console.error("[MuxProvider] Failed to create WebSocket:",a),j("disconnected")}}},[]),t=(0,e.useCallback)((a,d,e)=>{let g=i(a,e),h=c.current.get(g);if(h||(h=new Set,c.current.set(g,h)),h.add(d),!f.current.has(g)&&b.current?.readyState===WebSocket.OPEN){let c={ch:"terminal",id:a,type:"open",...e&&{projectId:e}};b.current.send(JSON.stringify(c))}return()=>{let a=c.current.get(g);a&&(a.delete(d),0===a.size&&c.current.delete(g))}},[]),u=(0,e.useCallback)((a,c,d)=>{if(b.current?.readyState===WebSocket.OPEN){let e={ch:"terminal",id:a,type:"data",data:c,...d&&{projectId:d}};b.current.send(JSON.stringify(e))}},[]),v=(0,e.useCallback)((a,c,d)=>{if(f.current.set(i(a,c),{id:a,projectId:c,tmuxName:d}),b.current?.readyState===WebSocket.OPEN){let e={ch:"terminal",id:a,type:"open",...c&&{projectId:c},...d&&{tmuxName:d}};b.current.send(JSON.stringify(e))}},[]),w=(0,e.useCallback)((a,c)=>{if(f.current.delete(i(a,c)),b.current?.readyState===WebSocket.OPEN){let d={ch:"terminal",id:a,type:"close",...c&&{projectId:c}};b.current.send(JSON.stringify(d))}},[]),x=(0,e.useCallback)((a,c,d,e)=>{if(b.current?.readyState===WebSocket.OPEN){let f={ch:"terminal",id:a,type:"resize",cols:c,rows:d,...e&&{projectId:e}};b.current.send(JSON.stringify(f))}},[]),y=(0,e.useMemo)(()=>({subscribeTerminal:t,writeTerminal:u,openTerminal:v,closeTerminal:w,resizeTerminal:x,status:h,sessions:k,lastError:m}),[t,u,v,w,x,h,k,m]);return(0,d.jsx)(g.Provider,{value:y,children:a})}},63028:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>f});var d=c(68844),e=c(16819);function f(){return(0,d.jsx)(e.ErrorDisplay,{title:"Page not found",message:"This route does not exist in the dashboard. Return to the main view to pick an active project or session.",tone:"not-found",primaryAction:{label:"Back to dashboard",href:"/"}})}},69648:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>j,generateMetadata:()=>i,viewport:()=>h});var d=c(68844),e=c(81249),f=c(81871),g=c(94666);c(24553);let h={width:"device-width",initialScale:1,viewportFit:"cover",themeColor:[{media:"(prefers-color-scheme: light)",color:"#f5f3f0"},{media:"(prefers-color-scheme: dark)",color:"#121110"}]};async function i(){let a=(0,e.P_)();return{title:{template:`%s | ${a}`,default:`ao | ${a}`},description:"Dashboard for managing parallel AI coding agents",appleWebApp:{capable:!0,statusBarStyle:"black-translucent",title:`ao | ${a}`}}}function j({children:a}){return(0,d.jsx)("html",{lang:"en",className:"dark",suppressHydrationWarning:!0,children:(0,d.jsxs)("body",{className:"h-screen overflow-hidden bg-[var(--color-bg-base)] text-[var(--color-text-primary)] antialiased",children:[(0,d.jsx)(g.Providers,{children:a}),(0,d.jsx)(f.ServiceWorkerRegistrar,{})]})})}},81249:(a,b,c)=>{"use strict";c.d(b,{Bq:()=>m,P_:()=>l,cf:()=>n});var d=c(29685),e=c(73024),f=c(76760),g=c(96898);function h(){let a=(0,g.NoB)();try{return(0,g.Z9L)(a)}catch(a){if(a instanceof g.kw3||a instanceof Error&&"code"in a&&"ENOENT"===a.code)return(0,g.Z9L)();throw a}}function i(a){try{return(0,e.realpathSync)(a)}catch{return(0,f.resolve)(a)}}function j(a,b){let c=i(a);for(let[a,d]of Object.entries(b.projects))if("string"==typeof d.path&&i(d.path)===c)return a}function k(a=h()){try{let b=function(a){try{let b=function(a){let b=(0,f.resolve)(a);for(;;){for(let a of["agent-orchestrator.yaml","agent-orchestrator.yml"]){let c=(0,f.resolve)(b,a);if((0,e.existsSync)(c))return c}let a=(0,f.dirname)(b);if(a===b)return;b=a}}(process.cwd());if(!b)return;let c=(0,g.Z9L)(b),d=i((0,g.NoB)());if(i(c.configPath)!==d){for(let b of Object.values(c.projects)){if("string"!=typeof b.path)continue;let c=j(b.path,a);if(c)return c}return j((0,f.dirname)(c.configPath),a)}}catch{}}(a);if(b)return b;let c=i(process.cwd());return j(c,a)}catch{return}}let l=(0,d.cache)(()=>{try{let a=h(),b=k(a);if(b){let c=a.projects[b];return c?.name??b}let c=Object.keys(a.projects)[0];if(c)return(a.projects[c].name??c)||c||"ao"}catch{}return"ao"}),m=(0,d.cache)(()=>{try{let a=h(),b=k(a);if(b)return b;let c=Object.keys(a.projects)[0];if(c)return c}catch{}return"ao"}),n=(0,d.cache)(()=>{try{let a=h();return[...Object.entries(a.projects).map(([a,b])=>({id:a,name:b.name??a,sessionPrefix:b.sessionPrefix??a})),...Object.entries(a.degradedProjects).map(([a,b])=>({id:a,name:a,sessionPrefix:a,resolveError:b.resolveError}))]}catch{return[]}})},81871:(a,b,c)=>{"use strict";c.d(b,{ServiceWorkerRegistrar:()=>d});let d=(0,c(10864).registerClientReference)(function(){throw Error("Attempted to call ServiceWorkerRegistrar() from the server but ServiceWorkerRegistrar is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/Users/equinox/.worktrees/agent-orchestrator/ao-168/packages/web/src/components/ServiceWorkerRegistrar.tsx","ServiceWorkerRegistrar")},82434:(a,b,c)=>{Promise.resolve().then(c.bind(c,27926))},82834:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>d});let d=(0,c(10864).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/Users/equinox/.worktrees/agent-orchestrator/ao-168/packages/web/src/app/error.tsx\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/Users/equinox/.worktrees/agent-orchestrator/ao-168/packages/web/src/app/error.tsx","default")},88496:(a,b,c)=>{"use strict";c.d(b,{Providers:()=>g});var d=c(33666),e=c(93463),f=c(58976);function g({children:a}){return(0,d.jsx)(e.N,{attribute:"class",defaultTheme:"dark",enableSystem:!1,children:(0,d.jsx)(f.i2,{children:a})})}},89252:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>g});var d=c(33666),e=c(50436);c(81115);var f=c(23041);function g({error:a,reset:b}){let c=(0,e.useRouter)();return(0,d.jsx)(f.ErrorDisplay,{title:"Something went wrong",message:"The dashboard hit an unexpected error. Try reloading the route data or head back to the main dashboard.",tone:"warning",primaryAction:{label:"Try again",onClick:()=>{b(),c.refresh()}},secondaryAction:{label:"Back to dashboard",href:"/"},error:a,compact:!0,chrome:"card"})}},94666:(a,b,c)=>{"use strict";c.d(b,{Providers:()=>d});let d=(0,c(10864).registerClientReference)(function(){throw Error("Attempted to call Providers() from the server but Providers is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/Users/equinox/.worktrees/agent-orchestrator/ao-168/packages/web/src/app/providers.tsx","Providers")},95275:(a,b,c)=>{Promise.resolve().then(c.bind(c,94666)),Promise.resolve().then(c.bind(c,81871))}};