bb-app 0.0.11 → 0.0.12
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.
- package/app/dist/assets/AppSettingsView-BnxUHmxx.js +1 -0
- package/app/dist/assets/InternalReplayListView-csLG2lko.js +1 -0
- package/app/dist/assets/{ProjectArchivedThreadsView-o1R22xfj.js → ProjectArchivedThreadsView-CH0nwbDU.js} +1 -1
- package/app/dist/assets/ProjectSettingsView-nWbGXc1H.js +1 -0
- package/app/dist/assets/ThreadDetailRoute-CO285nQR.js +2642 -0
- package/app/dist/assets/ThreadUnarchiveButton-CQaA-gHV.js +1 -0
- package/app/dist/assets/{angular-html-CN4B7z8Z.js → angular-html-BOmrr01g.js} +1 -1
- package/app/dist/assets/{angular-ts-Be9rCyh7.js → angular-ts-DCM7qcSK.js} +1 -1
- package/app/dist/assets/{apl-C-09mkOY.js → apl-DuVJ59sz.js} +1 -1
- package/app/dist/assets/{astro-DQR04HMP.js → astro-AQMIDGwi.js} +1 -1
- package/app/dist/assets/{blade-CHOb28s9.js → blade-CsPbsxBX.js} +1 -1
- package/app/dist/assets/{c-Czi5ZOPg.js → c-D9gG2MMW.js} +1 -1
- package/app/dist/assets/{chunk-JZWAC4HX-CmnT162V.js → chunk-JZWAC4HX-vAKkV_Y-.js} +1 -1
- package/app/dist/assets/{cobol-C0UrcShI.js → cobol-DD9s4tIq.js} +1 -1
- package/app/dist/assets/{coffee-DLCACHKU.js → coffee-6iFiN2xF.js} +1 -1
- package/app/dist/assets/{cpp-CKRDyJLk.js → cpp-DyiPD7p1.js} +1 -1
- package/app/dist/assets/{crystal-DzdlwfxO.js → crystal-XjoV3Lue.js} +1 -1
- package/app/dist/assets/{css-J88DqgyO.js → css-DJovgfNT.js} +1 -1
- package/app/dist/assets/dialog-BvotBFA0.js +22 -0
- package/app/dist/assets/{edge-BiusF5O8.js → edge-DYu9rQsg.js} +1 -1
- package/app/dist/assets/effective-hosts-CgZiG_wS.js +68 -0
- package/app/dist/assets/{elixir-DVV1N8WB.js → elixir-CGc4gb59.js} +1 -1
- package/app/dist/assets/{elm-ZwoouJdM.js → elm-DfNAAF5X.js} +1 -1
- package/app/dist/assets/{erb-6WVNn8lP.js → erb-CF74Kl7K.js} +1 -1
- package/app/dist/assets/{git-rebase-CI6iVcd4.js → git-rebase-2bSFR8VV.js} +1 -1
- package/app/dist/assets/{glimmer-js-MU0okVIL.js → glimmer-js-D1yNTSaa.js} +1 -1
- package/app/dist/assets/{glimmer-ts-BXJcqrHb.js → glimmer-ts-DVblM7L5.js} +1 -1
- package/app/dist/assets/{glsl-CthKK13_.js → glsl-gxzJizaK.js} +1 -1
- package/app/dist/assets/{graphql-Cfx6sMIN.js → graphql-BpTTKDqK.js} +1 -1
- package/app/dist/assets/{hack-Cfn0L20S.js → hack-DDSUlOik.js} +1 -1
- package/app/dist/assets/{haml-DpOUW3De.js → haml-BZNAh4-P.js} +1 -1
- package/app/dist/assets/{handlebars-Dq6TUqDg.js → handlebars-DlYJLEcO.js} +1 -1
- package/app/dist/assets/{html-CrFhd97J.js → html-MZ0Poiph.js} +1 -1
- package/app/dist/assets/{html-derivative-SXrZiT2S.js → html-derivative-ChK_TvO6.js} +1 -1
- package/app/dist/assets/{http-BxRXAeum.js → http-CEE8xOHO.js} +1 -1
- package/app/dist/assets/{hurl-BsAa903H.js → hurl-B5aHyN9a.js} +1 -1
- package/app/dist/assets/index-SSlA_QcC.css +2 -0
- package/app/dist/assets/index-u9J_LInz.js +1366 -0
- package/app/dist/assets/{java-BZRe3u16.js → java-C-CCkGSB.js} +1 -1
- package/app/dist/assets/{javascript-YzZUmjcN.js → javascript-CoPUJA8j.js} +1 -1
- package/app/dist/assets/{jinja-CkL9mgnB.js → jinja-Ce_R6KUf.js} +1 -1
- package/app/dist/assets/{jison-DY01LEsx.js → jison-DxdoAlKK.js} +1 -1
- package/app/dist/assets/{json-DeVTS63Q.js → json-PteH9L8Y.js} +1 -1
- package/app/dist/assets/{jsx-B73xjEBK.js → jsx-N08PKjBU.js} +1 -1
- package/app/dist/assets/{julia-D5UCqxaX.js → julia-D_eVESw1.js} +1 -1
- package/app/dist/assets/{just-BfeKX4XX.js → just-BVZ_2gix.js} +1 -1
- package/app/dist/assets/{latex-CllT7gYn.js → latex-CvglVjdX.js} +1 -1
- package/app/dist/assets/{liquid-Bgz2sjbj.js → liquid-C2RPsEhH.js} +1 -1
- package/app/dist/assets/localhost-badge-CHDdiNhq.js +1 -0
- package/app/dist/assets/{lua-CKg4_5Yw.js → lua-D9-kqDch.js} +1 -1
- package/app/dist/assets/{marko-CSplXaxm.js → marko-jVSfYuio.js} +1 -1
- package/app/dist/assets/{mdc-CR1bPJlt.js → mdc-DVHnOYT4.js} +1 -1
- package/app/dist/assets/mutation-cache-effects-plW3Wjx9.js +1 -0
- package/app/dist/assets/mutation-errors-INqXreOn.js +2 -0
- package/app/dist/assets/{nginx-Chba8emm.js → nginx-DfHWE4gw.js} +1 -1
- package/app/dist/assets/{nim-BJOCNxTB.js → nim-fW6F-8R_.js} +1 -1
- package/app/dist/assets/page-shell-omz5VWqw.js +39 -0
- package/app/dist/assets/{perl-DtYnB2VK.js → perl-C916SOdN.js} +1 -1
- package/app/dist/assets/{php-Cm6MwVxd.js → php-BDWQ0WnL.js} +1 -1
- package/app/dist/assets/{pill-Ds03GLze.js → pill-8eXFxAuz.js} +1 -1
- package/app/dist/assets/{pug-Cs95QZUY.js → pug-BTGBL6ey.js} +1 -1
- package/app/dist/assets/{qml-DV4H8TeV.js → qml-BB7gtLw5.js} +1 -1
- package/app/dist/assets/{r-BOwNWtkP.js → r-4Ktj_4BV.js} +1 -1
- package/app/dist/assets/{razor-rzD3KE0N.js → razor-C_Ejzpyk.js} +1 -1
- package/app/dist/assets/{regexp-D5UpjLq1.js → regexp-DdimReFO.js} +1 -1
- package/app/dist/assets/{rst-nRBldbnW.js → rst-Ba-8orMO.js} +1 -1
- package/app/dist/assets/{ruby-DK9_UnsF.js → ruby-DNE0wFLx.js} +1 -1
- package/app/dist/assets/{sas-BxxScrc4.js → sas-D6QyIc5Y.js} +1 -1
- package/app/dist/assets/{scss-dYaO_Ssw.js → scss-BpYltub1.js} +1 -1
- package/app/dist/assets/{settings-section-BgEyrMBV.js → settings-section-BkJbbK-p.js} +1 -1
- package/app/dist/assets/{shellscript-BGY92qaj.js → shellscript-B1QZDlVi.js} +1 -1
- package/app/dist/assets/{shellsession-DHio1RBs.js → shellsession-C2YSc67H.js} +1 -1
- package/app/dist/assets/{soy-CWnh82_C.js → soy-Ba6Otyql.js} +1 -1
- package/app/dist/assets/split-button-_uHFVDB-.js +1 -0
- package/app/dist/assets/{sql-BgOSYFXh.js → sql-Bnzimrzw.js} +1 -1
- package/app/dist/assets/{stata-Di5c1EGu.js → stata-BmWbZaNS.js} +1 -1
- package/app/dist/assets/{surrealql-CKgBuPai.js → surrealql-BDEpTym4.js} +1 -1
- package/app/dist/assets/{svelte-DGNSQgHP.js → svelte-D3__atge.js} +1 -1
- package/app/dist/assets/{templ--mBJoDNy.js → templ-B2QvG8e0.js} +1 -1
- package/app/dist/assets/{tex-Drg-gBC1.js → tex-oleGAEAp.js} +1 -1
- package/app/dist/assets/thread-queries-DpnZLohh.js +1 -0
- package/app/dist/assets/{ts-tags-_EoiaFc_.js → ts-tags-C4rrn99M.js} +1 -1
- package/app/dist/assets/{tsx-C3E3ZPo7.js → tsx-5jd1D3TG.js} +1 -1
- package/app/dist/assets/{twig-BkmJOmf1.js → twig-BxJeHYNu.js} +1 -1
- package/app/dist/assets/{typescript-zC8doK3K.js → typescript-81bZW67U.js} +1 -1
- package/app/dist/assets/{vue-Dqnq1uw7.js → vue-DSNd-6Ch.js} +1 -1
- package/app/dist/assets/{vue-html-CZNe_SnY.js → vue-html-CQT5rCwO.js} +1 -1
- package/app/dist/assets/{vue-vine-ChEJZJ0Y.js → vue-vine-BafaCKEQ.js} +1 -1
- package/app/dist/assets/workspace-open-target-preference-yN4DFIsy.js +1 -0
- package/app/dist/assets/{xml-DHqUJISw.js → xml-AdWB6zlJ.js} +1 -1
- package/app/dist/assets/{xsl-B_xW8s_z.js → xsl-Dy6hQs2F.js} +1 -1
- package/app/dist/assets/{yaml-CHAY15k-.js → yaml-BdzELsfc.js} +1 -1
- package/app/dist/index.html +10 -10
- package/dist/bb-app.js +1 -1
- package/dist/bb-host-daemon.js +1 -1
- package/host-daemon/dist/bb +325 -563
- package/host-daemon/dist/bb-claude-code-bridge.mjs +26 -26
- package/host-daemon/dist/daemon-bundle.mjs +337 -342
- package/package.json +1 -1
- package/server/dist/default-template/apps/status/manifest.json +9 -0
- package/server/dist/drizzle/0008_thread_pinning.sql +3 -0
- package/server/dist/drizzle/meta/0008_snapshot.json +3285 -0
- package/server/dist/drizzle/meta/_journal.json +7 -0
- package/server/dist/index.js +3510 -2512
- package/app/dist/assets/AppSettingsView-Dh4Od2M3.js +0 -1
- package/app/dist/assets/InternalReplayListView-BjzY8fhh.js +0 -1
- package/app/dist/assets/ProjectSettingsView-BoH5a1hi.js +0 -1
- package/app/dist/assets/ThreadDetailRoute-Caqz8odF.js +0 -2867
- package/app/dist/assets/ThreadUnarchiveButton-2shfHri9.js +0 -1
- package/app/dist/assets/dialog-JFJupr8S.js +0 -22
- package/app/dist/assets/effective-hosts-BS3g3uzj.js +0 -68
- package/app/dist/assets/index-DYJoFBAk.css +0 -2
- package/app/dist/assets/index-DbhAkEqX.js +0 -1366
- package/app/dist/assets/localhost-badge-BESHcXM2.js +0 -1
- package/app/dist/assets/mutation-cache-effects-BX02KjBd.js +0 -1
- package/app/dist/assets/mutation-errors-DgGC9CkY.js +0 -2
- package/app/dist/assets/page-shell-CaMV_G2I.js +0 -39
- package/app/dist/assets/split-button-PlurXMEc.js +0 -1
- package/app/dist/assets/thread-queries-DI7HoSpk.js +0 -1
- package/app/dist/assets/workspace-open-target-preference-Dve5Zih1.js +0 -1
- package/server/dist/default-template/STATUS.html +0 -380
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{Bi as e,Pi as t,Ta as n,Vi as r,ja as i,na as a}from"./page-shell-CaMV_G2I.js";import{Ut as o,c as s,f as c,h as l,m as u,p as d,u as f}from"./effective-hosts-BS3g3uzj.js";var p=a(),m=`grid grid-cols-[var(--detail-label-width,96px)_minmax(0,1fr)] gap-x-3`,h=`m-0 text-xs leading-5 text-muted-foreground`,g=`m-0 min-w-0 text-xs leading-5 text-foreground`;function _(e){if(e)return{"--detail-label-width":e}}var v=`flex flex-col gap-1`,y=`rounded-md border border-border bg-surface-raised px-2 py-1`;function b({children:e,className:t,labelWidth:n,appearance:i=`card`}){return(0,p.jsx)(`dl`,{className:r(v,i===`card`&&y,t),style:_(n),children:e})}function x({label:e,children:t,className:n,labelClassName:i,valueClassName:a,align:o=`center`,orientation:s=`horizontal`}){return s===`vertical`?(0,p.jsxs)(`div`,{className:r(`flex flex-col gap-1 py-0.5`,n),children:[(0,p.jsx)(`dt`,{className:r(h,i),children:e}),(0,p.jsx)(`dd`,{className:r(g,a),children:t})]}):(0,p.jsxs)(`div`,{className:r(m,o===`center`?`items-center py-0.5`:`py-0.5`,n),children:[(0,p.jsx)(`dt`,{className:r(h,i),children:e}),(0,p.jsx)(`dd`,{className:r(g,a),children:t})]})}var S=i(n(),1),C=o;function w({primaryAction:n,secondaryActions:i,disabled:a=!1,className:o,triggerLabel:m=`More actions`,mobileTitle:h,defaultOpen:g,modal:_}){let v=r(t({variant:`outline`,size:`sm`}),C,o);return(0,p.jsxs)(`div`,{className:`inline-flex items-center`,children:[(0,p.jsx)(`button`,{type:`button`,disabled:a,className:r(v,`rounded-r-none border-r-0 pr-1 focus-visible:z-10`),"aria-label":n.label,title:n.label,onClick:n.onSelect,children:n.content??n.label}),(0,p.jsxs)(s,{defaultOpen:g,modal:_,children:[(0,p.jsx)(l,{asChild:!0,children:(0,p.jsx)(`button`,{type:`button`,disabled:a,className:r(v,`rounded-l-none border-l-0 px-1 pl-0 focus-visible:z-10`,`data-[state=open]:bg-state-active data-[state=open]:text-foreground`),"aria-label":m,title:m,children:(0,p.jsx)(e,{name:`ChevronDown`,className:`size-3`})})}),(0,p.jsx)(f,{align:`end`,sideOffset:2,mobileTitle:h,children:i.map((e,t)=>{let n=i[t-1];return(0,p.jsxs)(S.Fragment,{children:[e.groupLabel!==void 0&&e.groupLabel!==n?.groupLabel?(0,p.jsxs)(p.Fragment,{children:[t>0?(0,p.jsx)(u,{}):null,(0,p.jsx)(d,{children:e.groupLabel})]}):null,(0,p.jsx)(c,{onSelect:e.onSelect,textValue:e.label,children:e.content??e.label})]},e.label)})})]})]})}export{b as n,x as r,w as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{$n as e,Cn as t,Ct as n,Dt as r,Et as i,Fn as a,G as o,H as s,Hi as c,It as l,K as u,Ln as d,Mn as f,Mt as ee,N as te,Nn as p,Ot as m,P as h,Pn as ne,Pt as re,Rn as ie,Rt as g,Sn as _,St as v,Ta as y,Tt as b,Ui as x,Ut as ae,Wi as oe,_n as se,_t as S,bn as C,bt as ce,ct as w,da as le,en as ue,fa as de,gn as T,ia as fe,ir as pe,ja as me,jn as he,kt as ge,la as _e,mn as ve,pt as ye,ta as E,ua as D,vn as O,vt as k,xn as A,xt as j,yn as M,yt as N,zn as P}from"./page-shell-CaMV_G2I.js";import{H as be,I as F,L as I,N as L,O as xe,U as Se,_ as R,b as z,d as Ce,l as we,u as B}from"./mutation-cache-effects-BX02KjBd.js";function V(e){return{onFetch:(t,n)=>{let r=t.options,i=t.fetchOptions?.meta?.fetchMore?.direction,a=t.state.data?.pages||[],o=t.state.data?.pageParams||[],s={pages:[],pageParams:[]},c=0,l=async()=>{let n=!1,l=e=>{_e(e,()=>t.signal,()=>n=!0)},u=de(t.options,t.fetchOptions),d=async(e,r,i)=>{if(n)return Promise.reject();if(r==null&&e.pages.length)return Promise.resolve(e);let a=await u((()=>{let e={client:t.client,queryKey:t.queryKey,pageParam:r,direction:i?`backward`:`forward`,meta:t.options.meta};return l(e),e})()),{maxPages:o}=t.options,s=i?le:D;return{pages:s(e.pages,a,o),pageParams:s(e.pageParams,r,o)}};if(i&&a.length){let e=i===`backward`,t=e?U:H,n={pages:a,pageParams:o};s=await d(n,t(r,n),e)}else{let t=e??a.length;do{let e=c===0?o[0]??r.initialPageParam:H(r,s);if(c>0&&e==null)break;s=await d(s,e),c++}while(c<t)}return s};t.options.persister?t.fetchFn=()=>t.options.persister?.(l,{client:t.client,queryKey:t.queryKey,meta:t.options.meta,signal:t.signal},n):t.fetchFn=l}}}function H(e,{pages:t,pageParams:n}){let r=t.length-1;return t.length>0?e.getNextPageParam(t[r],t,n[r],n):void 0}function U(e,{pages:t,pageParams:n}){return t.length>0?e.getPreviousPageParam?.(t[0],t,n[0],n):void 0}function Te(e,t){return t?H(e,t)!=null:!1}function Ee(e,t){return!t||!e.getPreviousPageParam?!1:U(e,t)!=null}var De=class extends fe{constructor(e,t){super(e,t)}bindMethods(){super.bindMethods(),this.fetchNextPage=this.fetchNextPage.bind(this),this.fetchPreviousPage=this.fetchPreviousPage.bind(this)}setOptions(e){super.setOptions({...e,behavior:V()})}getOptimisticResult(e){return e.behavior=V(),super.getOptimisticResult(e)}fetchNextPage(e){return this.fetch({...e,meta:{fetchMore:{direction:`forward`}}})}fetchPreviousPage(e){return this.fetch({...e,meta:{fetchMore:{direction:`backward`}}})}createResult(e,t){let{state:n}=e,r=super.createResult(e,t),{isFetching:i,isRefetching:a,isError:o,isRefetchError:s}=r,c=n.fetchMeta?.fetchMore?.direction,l=o&&c===`forward`,u=i&&c===`forward`,d=o&&c===`backward`,f=i&&c===`backward`;return{...r,fetchNextPage:this.fetchNextPage,fetchPreviousPage:this.fetchPreviousPage,hasNextPage:Te(t,n.data),hasPreviousPage:Ee(t,n.data),isFetchNextPageError:l,isFetchingNextPage:u,isFetchPreviousPageError:d,isFetchingPreviousPage:f,isRefetchError:s&&!l&&!d,isRefetching:a&&!u&&!f}}};function Oe(e,t){return oe(e,De,t)}function ke(e){return e.title&&e.title.trim().length>0?e.title:e.titleFallback&&e.titleFallback.trim().length>0?e.titleFallback:`Thread ${e.id.slice(0,8)}`}function Ae(e){return e===`manager`?`manager`:`thread`}function W(e,t){L(e,{queryKey:g(),mapper:e=>e.filter(e=>e.id!==t)})}function G({queryClient:e,thread:t}){L(e,{queryKey:g(),mapper:e=>e.map(e=>e.id===t.id?{...e,...t}:e)})}function je(e){let t=E();return c({meta:{errorMessage:e?.errorMessage??`Failed to update thread.`,...e?.lifecycleOperation?{lifecycleOperation:e.lifecycleOperation}:{}},mutationFn:({id:e,...t})=>pe(e,t),onSuccess:e=>{t.setQueryData(b(e.id),e),Ce({queryClient:t})}})}function Me(){let e=E();return c({meta:{errorMessage:`Failed to archive thread.`,lifecycleOperation:`archive_thread`,showErrorToast:!1},mutationFn:({id:e})=>ae(e),onMutate:async({id:t})=>{await e.cancelQueries({queryKey:b(t)}),await e.cancelQueries({queryKey:g()});let n=e.getQueryData(b(t)),r=I(e,{queryKey:g()}),i=Date.now();return e.setQueryData(b(t),e=>e&&{...e,archivedAt:i}),W(e,t),{previousThread:n,previousThreadLists:r}},onError:(t,n,r)=>{r&&(e.setQueryData(b(n.id),r.previousThread),F(e,r.previousThreadLists))},onSettled:(t,n,r)=>{B({queryClient:e,threadId:r.id})}})}function Ne(){let t=E();return c({meta:{errorMessage:`Failed to unarchive thread.`},mutationFn:({id:t})=>e(t),onMutate:async({id:e})=>{await t.cancelQueries({queryKey:b(e)}),await t.cancelQueries({queryKey:g()});let n=t.getQueryData(b(e)),r=I(t,{queryKey:g()});return t.setQueryData(b(e),e=>e&&{...e,archivedAt:null}),W(t,e),{previousThread:n,previousThreadLists:r}},onError:(e,n,r)=>{r&&(t.setQueryData(b(n.id),r.previousThread),F(t,r.previousThreadLists))},onSettled:(e,n,r)=>{B({queryClient:t,threadId:r.id})}})}function Pe(){let e=E();return c({meta:{errorMessage:`Failed to delete thread.`},mutationFn:({id:e,managerChildThreadsConfirmed:t})=>ue(e,{managerChildThreadsConfirmed:t}),onMutate:async({id:t})=>{await e.cancelQueries({queryKey:b(t)}),await e.cancelQueries({queryKey:g()}),await e.cancelQueries({queryKey:w()});let n=e.getQueryData(b(t)),r=I(e,{queryKey:g()}),i=e.getQueryData(w()),a=n?.environmentId;return R({queryClient:e,threadId:t}),z({environmentId:a,queryClient:e}),W(e,t),{previousThread:n,previousThreadLists:r,previousProjects:i,environmentId:a}},onError:(t,n,r)=>{r&&(e.setQueryData(b(n.id),r.previousThread),F(e,r.previousThreadLists),e.setQueryData(w(),r.previousProjects))},onSettled:(t,n,r,i)=>{R({queryClient:e,threadId:r.id}),z({environmentId:i?.environmentId,queryClient:e}),we({queryClient:e})}})}function Fe(){let e=E();return c({meta:{errorMessage:`Failed to mark thread read.`,showErrorToast:!1},mutationFn:e=>ie(e),onSuccess:t=>{e.setQueryData(b(t.id),t),G({queryClient:e,thread:t})}})}function Ie(){let e=E();return c({meta:{errorMessage:`Failed to mark thread unread.`,showErrorToast:!1},mutationFn:e=>P(e),onSuccess:t=>{e.setQueryData(b(t.id),t),G({queryClient:e,thread:t})}})}var Le=me(y(),1),K=`STATUS`,q=`STATUS.md`;function J(e){return e===`STATUS`||e===`STATUS/index.html`||e===`STATUS.md`||e===`STATUS.html`}function Re(e){return J(e)?K:e}function ze(e){return K}var Y=1e4,Be=2e3;function X(e,t){if(!e)throw Error(`${t}: thread id is required when query is enabled`);return e}function Ve({filters:e,projectId:t}){let n={archived:!1,projectId:t};return e.parentThreadId!==void 0&&(n.parentThreadId=e.parentThreadId),e.type!==void 0&&(n.type=e.type),n}function He(e,t){return!(t.parentThreadId!==void 0&&e.parentThreadId!==t.parentThreadId||t.type!==void 0&&e.type!==t.type)}function Ue(e,t){return e.filter(e=>He(e,t))}function We(e){return e===`manager`?{type:`manager`}:e===`managed`?{managed:!0,type:`standard`}:e===`unmanaged`?{managed:!1,type:`standard`}:{}}function Ge(e,t){let{projectId:n,kind:r}=e,i=(t?.enabled??!0)&&!!n,a=We(r);return Oe({queryKey:te({projectId:n??``,kind:r}),queryFn:({pageParam:e,signal:t})=>d({projectId:X(n??``,`useArchivedThreads`),archived:!0,...a,limit:100,offset:e},t),initialPageParam:0,getNextPageParam:(e,t)=>{if(!(e.length<100))return t.reduce((e,t)=>e+t.length,0)},enabled:i,staleTime:Y})}function Z(e,t){let{projectId:n,...r}=e,i=(t?.enabled??!0)&&!!n;return x({queryKey:i&&n?j({...r,projectId:n}):h(n?{...r,projectId:n}:r),queryFn:({signal:e})=>d({...r,projectId:X(n??``,`useThreads`)},e),enabled:i,staleTime:Y})}function Ke({enabled:e,filters:t,projectId:n}){let r=E(),i=(e??!0)&&!!n,{parentThreadId:a,type:o}=t,s=i&&n?j({archived:!1,projectId:n}):h(n?{archived:!1,projectId:n}:{archived:!1}),c=i&&n!==void 0&&r.getQueryData(j({archived:!1,projectId:n}))!==void 0,l=x({queryKey:s,queryFn:({signal:e})=>d({archived:!1,projectId:X(n??``,`useProjectThreadSubset`)},e),enabled:i&&c,staleTime:Y}),u=l.data!==void 0,f=Z(Ve({filters:t,projectId:n}),{enabled:i&&!u});return{data:(0,Le.useMemo)(()=>l.data?Ue(l.data,{parentThreadId:a,type:o}):void 0,[l.data,a,o])??f.data,isError:u?l.isError:f.isError,isFetching:u?l.isFetching:f.isFetching,isLoading:u?l.isLoading:f.isLoading}}function qe(e,t){let n=E();return x({queryKey:b(e),queryFn:()=>ve(X(e,`useThread`)),enabled:(t?.enabled??!0)&&!!e,staleTime:5e3,refetchOnMount:t?.refetchOnMount??!0,placeholderData:(t,r)=>be(t,r?.queryKey,e)??xe(n,e)})}function Je(e){let{environment:t,host:n,...r}=e;return r}function Ye({host:e,hosts:t}){if(!t)return[e];let n=!1,r=t.map(t=>t.id===e.id?(n=!0,e):t);return n?r:[...t,e]}function Q({bootstrap:e,environmentId:t,providerId:r,queryClient:a,threadId:o}){a.setQueryData(k(o),e.defaultExecutionOptions),a.setQueryData(i(o),e.queuedMessages),a.setQueryData(n(o),e.promptHistory),a.setQueryData(v(o),e.pendingInteractions);let s=r??e.executionOptions.providers[0]?.id;s&&a.setQueryData(ye({environmentId:t,providerId:s}),e.executionOptions)}function Xe(e,n){let r=E();return x({queryKey:N(e),queryFn:async()=>{let i=await t(X(e,`useThreadDetailBootstrap`));if(r.setQueryData(b(i.id),Je(i)),i.environment&&r.setQueryData(s(i.environment.id),i.environment),i.host){let e=i.host;r.setQueryData(o(e.id),e),r.setQueryData(u(),t=>Ye({host:e,hosts:t}))}if(n?.timelinePrefetch){let e=i.type===`manager`?n.timelinePrefetch.managerTimelineView:void 0;r.prefetchQuery({queryKey:l(i.id,e),queryFn:()=>A({id:i.id,managerTimelineView:e})})}if(n?.composerBootstrapPrefetch){let e=i.environmentId??null,t=i.providerId??null;r.prefetchQuery({queryKey:S(i.id,e),queryFn:async()=>{let n=await T(i.id);return Q({bootstrap:n,environmentId:e,providerId:t,queryClient:r,threadId:i.id}),n}})}return i},enabled:(n?.enabled??!0)&&!!e,staleTime:1/0})}function Ze(e,t){let n=E(),r=t?.environmentId??null,i=t?.providerId??null;return x({queryKey:S(e,r),queryFn:async()=>{let t=await T(X(e,`useThreadComposerBootstrap`));return Q({bootstrap:t,environmentId:r,providerId:i,queryClient:n,threadId:e}),t},enabled:(t?.enabled??!0)&&!!e,refetchOnMount:t?.refetchOnMount??!0,refetchOnWindowFocus:!1,...t?.staleTime===void 0?{}:{staleTime:t.staleTime}})}function $(e,t){return x({queryKey:k(e),queryFn:()=>se(X(e,`useThreadDefaultExecutionOptions`)),enabled:(t?.enabled??!0)&&!!e,refetchOnMount:t?.refetchOnMount??!0,refetchOnWindowFocus:!1,staleTime:t?.staleTime})}function Qe(e,t){return x({queryKey:i(e),queryFn:()=>p(X(e,`useThreadQueuedMessages`)),enabled:(t?.enabled??!0)&&!!e,refetchOnMount:t?.refetchOnMount??!0,refetchOnWindowFocus:!1,staleTime:t?.staleTime})}function $e(e,t){return x({queryKey:n(e),queryFn:({signal:t})=>f(X(e,`useThreadPromptHistory`),t),enabled:(t?.enabled??!0)&&!!e,refetchOnMount:t?.refetchOnMount??!0,staleTime:t?.staleTime??1e4})}function et(e,t){return x({queryKey:v(e),queryFn:({signal:t})=>he(X(e,`useThreadPendingInteractions`),t),enabled:(t?.enabled??!0)&&!!e,refetchOnMount:t?.refetchOnMount??!0,refetchOnWindowFocus:!1,staleTime:t?.staleTime})}function tt(e,t,n){return x({queryKey:ee(e,t),queryFn:({signal:n})=>ne({id:X(e,`useThreadStorageFiles`),options:t,signal:n}),enabled:(n?.enabled??!0)&&!!e,refetchOnWindowFocus:!1})}function nt(e,t,n){return x({queryKey:re(e,t),queryFn:({signal:n})=>a({id:X(e,`useThreadStoragePaths`),options:t,signal:n}),enabled:(n?.enabled??!0)&&!!e,refetchOnWindowFocus:!1,placeholderData:e=>e})}function rt(e,t,n){return x({queryKey:ge(e,t),queryFn:({signal:n})=>C(X(e,`useThreadStorageFilePreview`),t??``,n),enabled:(n?.enabled??!0)&&!!e&&!!t,refetchOnWindowFocus:!1})}function it(e,t){return x({queryKey:m(e),queryFn:({signal:t})=>M(X(e,`useThreadStatusVersion`),t),enabled:(t?.enabled??!0)&&!!e,refetchInterval:Be,refetchIntervalInBackground:!1,refetchOnWindowFocus:!0,staleTime:t?.staleTime})}function at(e,t,n){return x({queryKey:r(e,t),queryFn:({signal:t})=>C(X(e,`useThreadStatusMarkdownPreview`),q,t),enabled:(n?.enabled??!0)&&!!e&&!!t,refetchOnWindowFocus:!1,staleTime:n?.staleTime})}function ot(e,t,n,r){return x({queryKey:ce(e,t,n),queryFn:({signal:t})=>O(X(e,`useThreadHostFilePreview`),n??``,t),enabled:(r?.enabled??!0)&&!!e&&!!t&&!!n,refetchOnWindowFocus:!1})}function st(e,t){let n=t?.managerTimelineView;return x({queryKey:l(e,n),queryFn:()=>A({id:X(e,`useThreadTimeline`),managerTimelineView:n}),enabled:(t?.enabled??!0)&&!!e,refetchOnMount:t?.refetchOnMount??!0,...t?.staleTime===void 0?{}:{staleTime:t.staleTime},placeholderData:(t,r)=>Se(t,r?.queryKey,e,n)})}function ct(){return c({meta:{errorMessage:`Failed to load turn summary details.`,showErrorToast:!1},mutationFn:e=>_(e)})}function lt(e){if(!e||e.length===0)return null;let[t,...n]=e;return n.reduce((e,t)=>t.createdAt>e.createdAt?t:e,t)}export{ke as A,ze as C,Ie as D,Fe as E,V as M,Ne as O,Re as S,Pe as T,st as _,Ze as a,q as b,ot as c,Qe as d,at as f,nt as g,tt as h,qe as i,Ae as j,je as k,et as l,rt as m,Ge as n,$ as o,it as p,Ke as r,Xe as s,lt as t,$e as u,ct as v,Me as w,J as x,Z as y};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{Bi as e,Ta as t,Vi as n,ja as r,na as i}from"./page-shell-CaMV_G2I.js";import{at as a,rt as o}from"./effective-hosts-BS3g3uzj.js";import{d as s,h as c,l,m as u,u as d,v as f}from"./dialog-JFJupr8S.js";import{E as p,b as m}from"./mutation-errors-DgGC9CkY.js";var h=`data:image/png;base64,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`,g=`data:image/png;base64,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`,_=`/assets/finder-BYyfd7HG.png`,v=`/assets/ghostty-D5T950Nz.png`,y=`data:image/png;base64,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`,b=`data:image/png;base64,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`,x=`data:image/png;base64,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`,S=`data:image/png;base64,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`,C=`/assets/windsurf-Do5nbXdF.png`,w=`/assets/xcode-BOSzsT4U.png`,T=`/assets/zed-C-eVD5h3.png`,E=i(),D={antigravity:h,cursor:g,finder:_,ghostty:v,iterm2:y,"sublime-text":b,terminal:x,vscode:S,windsurf:C,xcode:w,zed:T};function O({className:t=`size-4`,targetId:r}){return r===`default-app`?(0,E.jsx)(`span`,{className:n(t,`flex shrink-0 items-center justify-center text-muted-foreground`),children:(0,E.jsx)(e,{name:`ExternalLink`,className:`!size-3.5`,"aria-hidden":!0})}):(0,E.jsx)(`img`,{alt:``,className:n(t,`shrink-0 rounded-[3px]`),draggable:!1,src:D[r]})}var k=r(t(),1),A=f(null),j=f(null),M=f([]);function N(e){let t=c(e.enabled?d:A),n=c(e.enabled?l:j),r=c(e.enabled?s:M);return{openWorkspace:(0,k.useMemo)(()=>{if(!e.enabled||!t||!n||r.length===0)return null;let i=n;return e=>o(i,e)},[e.enabled,t,n,r.length]),workspaceOpenTargets:r}}var P=`bb.workspaceOpenTarget`,F=`bb.fileOpenTarget`;function I(e){return e.target.capabilities[e.capability]}function L(e){return I({capability:`openDirectory`,target:e})}function R(e){return I({capability:`openFile`,target:e})}function z(e,t){return t.find(t=>I({capability:e,target:t}))??null}function B(e){return a.safeParse(e).success}var V=m(B),H=p(P,null,V,{getOnInit:!0}),U=p(F,null,V,{getOnInit:!0});function W(e){if(e.preferredTargetId!==null){let t=e.targets.find(t=>t.id===e.preferredTargetId&&I({capability:e.capability,target:t}));if(t)return t}return z(e.capability,e.targets)}function G(){return u(H)}function K(){return u(U)}export{K as a,O as c,I as i,R as n,G as o,W as r,N as s,L as t};
|
|
@@ -1,380 +0,0 @@
|
|
|
1
|
-
<!doctype html>
|
|
2
|
-
<html lang="en">
|
|
3
|
-
<head>
|
|
4
|
-
<meta charset="utf-8" />
|
|
5
|
-
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
6
|
-
<title>Manager Status</title>
|
|
7
|
-
<link rel="preconnect" href="https://fonts.googleapis.com" />
|
|
8
|
-
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
|
|
9
|
-
<link
|
|
10
|
-
href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Fira+Code:wght@400;500&display=swap"
|
|
11
|
-
rel="stylesheet"
|
|
12
|
-
/>
|
|
13
|
-
<style>
|
|
14
|
-
/* bb design tokens, mirrored from apps/app/src/components/ui/theme.css.
|
|
15
|
-
See also: `bb guide styling`. */
|
|
16
|
-
:root {
|
|
17
|
-
color-scheme: light;
|
|
18
|
-
--background: oklch(0.9551 0 0);
|
|
19
|
-
--foreground: oklch(0.3211 0 0);
|
|
20
|
-
--card: oklch(0.9702 0 0);
|
|
21
|
-
--muted-foreground: oklch(0.5103 0 0);
|
|
22
|
-
--secondary: oklch(0.9067 0 0);
|
|
23
|
-
--border: oklch(0.8576 0 0);
|
|
24
|
-
--success: oklch(0.7 0.15 155);
|
|
25
|
-
--attention: oklch(0.74 0.15 80);
|
|
26
|
-
--destructive: oklch(0.5594 0.19 25.8625);
|
|
27
|
-
--primary: oklch(0.4891 0 0);
|
|
28
|
-
--font-sans: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;
|
|
29
|
-
--font-mono: "Fira Code", ui-monospace, Menlo, monospace;
|
|
30
|
-
--radius: 0.35rem;
|
|
31
|
-
--radius-sm: calc(var(--radius) - 4px);
|
|
32
|
-
--shadow-sm:
|
|
33
|
-
0px 2px 0px 0px hsl(0 0% 20% / 0.12),
|
|
34
|
-
0px 1px 2px -1px hsl(0 0% 20% / 0.12);
|
|
35
|
-
--text-xs: 0.75rem;
|
|
36
|
-
--text-sm: 0.8125rem;
|
|
37
|
-
--text-base: 0.9375rem;
|
|
38
|
-
}
|
|
39
|
-
@media (prefers-color-scheme: dark) {
|
|
40
|
-
:root {
|
|
41
|
-
color-scheme: dark;
|
|
42
|
-
--background: oklch(0.195 0 0);
|
|
43
|
-
--foreground: oklch(0.8853 0 0);
|
|
44
|
-
--card: oklch(0.2435 0 0);
|
|
45
|
-
--muted-foreground: oklch(0.66 0 0);
|
|
46
|
-
--secondary: oklch(0.3092 0 0);
|
|
47
|
-
--border: oklch(0.329 0 0);
|
|
48
|
-
--success: oklch(0.74 0.15 155);
|
|
49
|
-
--attention: oklch(0.8 0.15 80);
|
|
50
|
-
--destructive: oklch(0.56 0.19 22.1703);
|
|
51
|
-
--primary: oklch(0.7058 0 0);
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
*,
|
|
56
|
-
*::before,
|
|
57
|
-
*::after {
|
|
58
|
-
box-sizing: border-box;
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
html {
|
|
62
|
-
height: 100%;
|
|
63
|
-
overflow-y: auto;
|
|
64
|
-
overflow-x: hidden;
|
|
65
|
-
scrollbar-width: thin;
|
|
66
|
-
scrollbar-color: var(--border) transparent;
|
|
67
|
-
}
|
|
68
|
-
html::-webkit-scrollbar {
|
|
69
|
-
width: 10px;
|
|
70
|
-
}
|
|
71
|
-
html::-webkit-scrollbar-thumb {
|
|
72
|
-
background: var(--border);
|
|
73
|
-
border-radius: 999px;
|
|
74
|
-
border: 2px solid var(--background);
|
|
75
|
-
}
|
|
76
|
-
html::-webkit-scrollbar-thumb:hover {
|
|
77
|
-
background: var(--muted-foreground);
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
body {
|
|
81
|
-
margin: 0;
|
|
82
|
-
padding: 16px 16px 20px;
|
|
83
|
-
background: var(--background);
|
|
84
|
-
color: var(--foreground);
|
|
85
|
-
font-family: var(--font-sans);
|
|
86
|
-
font-size: var(--text-base);
|
|
87
|
-
line-height: 1.45;
|
|
88
|
-
-webkit-font-smoothing: antialiased;
|
|
89
|
-
text-rendering: optimizeLegibility;
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
a {
|
|
93
|
-
color: inherit;
|
|
94
|
-
text-decoration: none;
|
|
95
|
-
}
|
|
96
|
-
a:hover {
|
|
97
|
-
text-decoration: underline;
|
|
98
|
-
text-decoration-thickness: 1px;
|
|
99
|
-
text-underline-offset: 2px;
|
|
100
|
-
}
|
|
101
|
-
|
|
102
|
-
code,
|
|
103
|
-
.mono {
|
|
104
|
-
font-family: var(--font-mono);
|
|
105
|
-
font-size: var(--text-xs);
|
|
106
|
-
color: var(--muted-foreground);
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
/* header */
|
|
110
|
-
.header {
|
|
111
|
-
display: flex;
|
|
112
|
-
align-items: center;
|
|
113
|
-
gap: 8px;
|
|
114
|
-
padding-bottom: 10px;
|
|
115
|
-
border-bottom: 1px solid var(--border);
|
|
116
|
-
}
|
|
117
|
-
.brand {
|
|
118
|
-
width: 20px;
|
|
119
|
-
height: 20px;
|
|
120
|
-
border: 1px solid var(--border);
|
|
121
|
-
background: var(--card);
|
|
122
|
-
border-radius: var(--radius-sm);
|
|
123
|
-
display: inline-flex;
|
|
124
|
-
align-items: center;
|
|
125
|
-
justify-content: center;
|
|
126
|
-
font-family: var(--font-mono);
|
|
127
|
-
font-weight: 500;
|
|
128
|
-
font-size: 10px;
|
|
129
|
-
}
|
|
130
|
-
.title {
|
|
131
|
-
font-size: var(--text-sm);
|
|
132
|
-
font-weight: 600;
|
|
133
|
-
letter-spacing: -0.005em;
|
|
134
|
-
flex: 1;
|
|
135
|
-
min-width: 0;
|
|
136
|
-
}
|
|
137
|
-
.ts {
|
|
138
|
-
font-family: var(--font-mono);
|
|
139
|
-
font-size: 10px;
|
|
140
|
-
color: var(--muted-foreground);
|
|
141
|
-
}
|
|
142
|
-
|
|
143
|
-
/* sections */
|
|
144
|
-
section {
|
|
145
|
-
margin-top: 16px;
|
|
146
|
-
}
|
|
147
|
-
.sect-title {
|
|
148
|
-
font-size: 10.5px;
|
|
149
|
-
font-weight: 600;
|
|
150
|
-
letter-spacing: 0.06em;
|
|
151
|
-
text-transform: uppercase;
|
|
152
|
-
color: var(--muted-foreground);
|
|
153
|
-
margin-bottom: 8px;
|
|
154
|
-
}
|
|
155
|
-
|
|
156
|
-
/* row */
|
|
157
|
-
.row {
|
|
158
|
-
display: flex;
|
|
159
|
-
align-items: flex-start;
|
|
160
|
-
justify-content: space-between;
|
|
161
|
-
gap: 10px;
|
|
162
|
-
padding: 10px 12px;
|
|
163
|
-
background: var(--card);
|
|
164
|
-
border: 1px solid var(--border);
|
|
165
|
-
border-radius: var(--radius);
|
|
166
|
-
}
|
|
167
|
-
.row + .row {
|
|
168
|
-
margin-top: 6px;
|
|
169
|
-
}
|
|
170
|
-
.row .main {
|
|
171
|
-
min-width: 0;
|
|
172
|
-
flex: 1;
|
|
173
|
-
}
|
|
174
|
-
.row .label {
|
|
175
|
-
font-family: var(--font-mono);
|
|
176
|
-
font-size: 10.5px;
|
|
177
|
-
color: var(--muted-foreground);
|
|
178
|
-
margin-bottom: 3px;
|
|
179
|
-
}
|
|
180
|
-
.row .name {
|
|
181
|
-
font-size: var(--text-sm);
|
|
182
|
-
font-weight: 500;
|
|
183
|
-
line-height: 1.35;
|
|
184
|
-
color: var(--foreground);
|
|
185
|
-
word-break: break-word;
|
|
186
|
-
}
|
|
187
|
-
|
|
188
|
-
/* pill */
|
|
189
|
-
.pill {
|
|
190
|
-
display: inline-flex;
|
|
191
|
-
align-items: center;
|
|
192
|
-
gap: 5px;
|
|
193
|
-
font-family: var(--font-mono);
|
|
194
|
-
font-size: 9.5px;
|
|
195
|
-
font-weight: 500;
|
|
196
|
-
line-height: 1;
|
|
197
|
-
padding: 3px 7px;
|
|
198
|
-
border-radius: 999px;
|
|
199
|
-
border: 1px solid var(--border);
|
|
200
|
-
background: var(--secondary);
|
|
201
|
-
color: var(--muted-foreground);
|
|
202
|
-
text-transform: uppercase;
|
|
203
|
-
letter-spacing: 0.05em;
|
|
204
|
-
white-space: nowrap;
|
|
205
|
-
flex-shrink: 0;
|
|
206
|
-
}
|
|
207
|
-
.pill .dot {
|
|
208
|
-
width: 5px;
|
|
209
|
-
height: 5px;
|
|
210
|
-
border-radius: 999px;
|
|
211
|
-
background: currentColor;
|
|
212
|
-
}
|
|
213
|
-
.pill.open {
|
|
214
|
-
color: var(--success);
|
|
215
|
-
background: color-mix(in srgb, var(--success) 12%, var(--background));
|
|
216
|
-
border-color: color-mix(in srgb, var(--success) 32%, var(--border));
|
|
217
|
-
}
|
|
218
|
-
.pill.running {
|
|
219
|
-
color: var(--attention);
|
|
220
|
-
background: color-mix(in srgb, var(--attention) 14%, var(--background));
|
|
221
|
-
border-color: color-mix(in srgb, var(--attention) 32%, var(--border));
|
|
222
|
-
}
|
|
223
|
-
.pill.failed {
|
|
224
|
-
color: var(--destructive);
|
|
225
|
-
background: color-mix(in srgb, var(--destructive) 12%, var(--background));
|
|
226
|
-
border-color: color-mix(in srgb, var(--destructive) 32%, var(--border));
|
|
227
|
-
}
|
|
228
|
-
|
|
229
|
-
.empty {
|
|
230
|
-
padding: 10px 12px;
|
|
231
|
-
font-size: var(--text-sm);
|
|
232
|
-
color: var(--muted-foreground);
|
|
233
|
-
font-style: italic;
|
|
234
|
-
border: 1px dashed var(--border);
|
|
235
|
-
border-radius: var(--radius);
|
|
236
|
-
}
|
|
237
|
-
</style>
|
|
238
|
-
</head>
|
|
239
|
-
<body>
|
|
240
|
-
<header class="header">
|
|
241
|
-
<span class="brand">bb</span>
|
|
242
|
-
<span class="title">Manager status</span>
|
|
243
|
-
<span class="ts">—</span>
|
|
244
|
-
</header>
|
|
245
|
-
|
|
246
|
-
<section>
|
|
247
|
-
<div class="sect-title">Open PRs · 0</div>
|
|
248
|
-
<div class="empty">No open PRs.</div>
|
|
249
|
-
</section>
|
|
250
|
-
|
|
251
|
-
<section>
|
|
252
|
-
<div class="sect-title">Active workers · 0</div>
|
|
253
|
-
<div class="empty">No active workers.</div>
|
|
254
|
-
</section>
|
|
255
|
-
|
|
256
|
-
<!--
|
|
257
|
-
=====================================================================
|
|
258
|
-
SNIPPET LIBRARY — copy/paste from these patterns when populating
|
|
259
|
-
STATUS.html. Keep them in sync if you change the styles above. For the
|
|
260
|
-
design tokens themselves, run `bb guide styling`.
|
|
261
|
-
=====================================================================
|
|
262
|
-
|
|
263
|
-
---- Refresh timestamp (header right) ----
|
|
264
|
-
Update <span class="ts"> on every refresh:
|
|
265
|
-
<span class="ts">YYYY-MM-DD · HH:MM TZ</span>
|
|
266
|
-
|
|
267
|
-
---- Section: open PRs (with count) ----
|
|
268
|
-
<section>
|
|
269
|
-
<div class="sect-title">Open PRs · 2</div>
|
|
270
|
-
<div class="row"> ...PR row... </div>
|
|
271
|
-
<div class="row"> ...PR row... </div>
|
|
272
|
-
</section>
|
|
273
|
-
|
|
274
|
-
---- PR row ----
|
|
275
|
-
<div class="row">
|
|
276
|
-
<div class="main">
|
|
277
|
-
<div class="label">#42</div>
|
|
278
|
-
<div class="name">
|
|
279
|
-
<a href="https://github.com/OWNER/REPO/pull/42" target="_blank" rel="noopener">PR title goes here</a>
|
|
280
|
-
</div>
|
|
281
|
-
</div>
|
|
282
|
-
<span class="pill open"><span class="dot"></span>Open</span>
|
|
283
|
-
</div>
|
|
284
|
-
|
|
285
|
-
---- Active worker row ----
|
|
286
|
-
<div class="row">
|
|
287
|
-
<div class="main">
|
|
288
|
-
<div class="label">thr_xxxxxxxxxx</div>
|
|
289
|
-
<div class="name">One-line description of what the worker is doing</div>
|
|
290
|
-
</div>
|
|
291
|
-
<span class="pill running"><span class="dot"></span>Running</span>
|
|
292
|
-
</div>
|
|
293
|
-
|
|
294
|
-
---- Empty state ----
|
|
295
|
-
<div class="empty">No open PRs.</div>
|
|
296
|
-
<div class="empty">No active workers.</div>
|
|
297
|
-
|
|
298
|
-
---- Pill variants ----
|
|
299
|
-
<span class="pill open"><span class="dot"></span>Open</span> (success / green)
|
|
300
|
-
<span class="pill running"><span class="dot"></span>Running</span> (attention / amber)
|
|
301
|
-
<span class="pill failed"><span class="dot"></span>Failed</span> (destructive / red)
|
|
302
|
-
<span class="pill"><span class="dot"></span>Neutral</span> (muted)
|
|
303
|
-
|
|
304
|
-
---- Inline status annotation on a name (e.g. "Superseded by #99") ----
|
|
305
|
-
<span class="pill" style="margin-left:6px; color:var(--destructive); border-color:color-mix(in srgb,var(--destructive) 32%,var(--border)); background:color-mix(in srgb,var(--destructive) 12%,var(--background))">Superseded by #99</span>
|
|
306
|
-
|
|
307
|
-
=====================================================================
|
|
308
|
-
No-PR landing mode — use these two sections in place of "Open PRs"
|
|
309
|
-
when the user has opted out of PRs. "In progress" tracks worker
|
|
310
|
-
branches in flight; "Ready for review" tracks validated branches
|
|
311
|
-
waiting for the user to push or merge.
|
|
312
|
-
=====================================================================
|
|
313
|
-
|
|
314
|
-
---- Section: in-progress work (no-PR mode) ----
|
|
315
|
-
<section>
|
|
316
|
-
<div class="sect-title">In progress · N</div>
|
|
317
|
-
<div class="row">
|
|
318
|
-
<div class="main">
|
|
319
|
-
<div class="label">branch-name</div>
|
|
320
|
-
<div class="name">One-line description of the work in flight</div>
|
|
321
|
-
</div>
|
|
322
|
-
<span class="pill running"><span class="dot"></span>WIP</span>
|
|
323
|
-
</div>
|
|
324
|
-
</section>
|
|
325
|
-
|
|
326
|
-
---- Section: ready for review (no-PR mode) ----
|
|
327
|
-
<section>
|
|
328
|
-
<div class="sect-title">Ready for review · N</div>
|
|
329
|
-
<div class="row">
|
|
330
|
-
<div class="main">
|
|
331
|
-
<div class="label">branch-name</div>
|
|
332
|
-
<div class="name">One-line description · validated and waiting for user OK</div>
|
|
333
|
-
</div>
|
|
334
|
-
<span class="pill open"><span class="dot"></span>Ready</span>
|
|
335
|
-
</div>
|
|
336
|
-
</section>
|
|
337
|
-
|
|
338
|
-
---- Optional sections you may want later ----
|
|
339
|
-
|
|
340
|
-
Active workers entry with provider/base meta (use a card-style row with extra meta block):
|
|
341
|
-
<article class="row" style="flex-direction:column; align-items:stretch; gap:6px">
|
|
342
|
-
<div style="display:flex; justify-content:space-between; gap:10px; align-items:flex-start">
|
|
343
|
-
<span class="label">thr_xxxxxxxxxx</span>
|
|
344
|
-
<span class="pill running"><span class="dot"></span>Running</span>
|
|
345
|
-
</div>
|
|
346
|
-
<div class="name">Description</div>
|
|
347
|
-
<div style="display:flex; flex-direction:column; gap:3px; font-family:var(--font-mono); font-size:10.5px; color:var(--muted-foreground)">
|
|
348
|
-
<span>provider · codex · xhigh · full perms</span>
|
|
349
|
-
<span>base · origin/main</span>
|
|
350
|
-
</div>
|
|
351
|
-
</article>
|
|
352
|
-
|
|
353
|
-
Dev-instance callout:
|
|
354
|
-
<section>
|
|
355
|
-
<div class="sect-title">Dev instance</div>
|
|
356
|
-
<div class="row">
|
|
357
|
-
<div class="main">
|
|
358
|
-
<div class="label">~/.bb-dev/</div>
|
|
359
|
-
<div class="name">Running PR #NN worktree.</div>
|
|
360
|
-
</div>
|
|
361
|
-
<span class="pill running"><span class="dot"></span>Up</span>
|
|
362
|
-
</div>
|
|
363
|
-
</section>
|
|
364
|
-
|
|
365
|
-
Recently completed feed (compact list — keep short, e.g. last 3):
|
|
366
|
-
<section>
|
|
367
|
-
<div class="sect-title">Recently completed · 2</div>
|
|
368
|
-
<div class="row">
|
|
369
|
-
<div class="main">
|
|
370
|
-
<div class="label">thr_xxxxxxxxxx</div>
|
|
371
|
-
<div class="name">
|
|
372
|
-
One-line outcome — <a href="https://github.com/OWNER/REPO/pull/41" target="_blank" rel="noopener">PR #41</a>
|
|
373
|
-
<span class="pill" style="margin-left:6px">Merged</span>
|
|
374
|
-
</div>
|
|
375
|
-
</div>
|
|
376
|
-
</div>
|
|
377
|
-
</section>
|
|
378
|
-
-->
|
|
379
|
-
</body>
|
|
380
|
-
</html>
|