@band-app/server 0.48.0 → 0.49.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 (72) hide show
  1. package/dist/client/_shell.html +0 -0
  2. package/dist/client/assets/{TerminalPanel-DkQbk-aU.js → TerminalPanel-aDctdh--.js} +1 -1
  3. package/dist/client/assets/{_basePickBy-Dpp3dGrC.js → _basePickBy-BDaJ7iVy.js} +1 -1
  4. package/dist/client/assets/{_baseUniq-CL7CCXzw.js → _baseUniq-rSINbzzc.js} +1 -1
  5. package/dist/client/assets/{arc-Dgc_RxlI.js → arc-4Yyg0K0-.js} +1 -1
  6. package/dist/client/assets/{architectureDiagram-VXUJARFQ-CgG43jHE.js → architectureDiagram-VXUJARFQ-C4h1MQHg.js} +1 -1
  7. package/dist/client/assets/{blockDiagram-VD42YOAC-Bt7XXELu.js → blockDiagram-VD42YOAC-CrrXk4CN.js} +1 -1
  8. package/dist/client/assets/{c4Diagram-YG6GDRKO-BQwG7Gi0.js → c4Diagram-YG6GDRKO-Czp1GECy.js} +1 -1
  9. package/dist/client/assets/channel-XQwgZP0_.js +1 -0
  10. package/dist/client/assets/{chunk-4BX2VUAB-BwFghqiW.js → chunk-4BX2VUAB-CIxYdBy6.js} +1 -1
  11. package/dist/client/assets/{chunk-55IACEB6-C7yjJLc1.js → chunk-55IACEB6-CRkvvZLq.js} +1 -1
  12. package/dist/client/assets/{chunk-B4BG7PRW-BaJd9PuL.js → chunk-B4BG7PRW-CMinE2CV.js} +1 -1
  13. package/dist/client/assets/{chunk-DI55MBZ5-CElPgENm.js → chunk-DI55MBZ5-CI8iH_kO.js} +1 -1
  14. package/dist/client/assets/{chunk-FMBD7UC4-D3qe2ywl.js → chunk-FMBD7UC4-DmtFHAkl.js} +1 -1
  15. package/dist/client/assets/{chunk-QN33PNHL-DStfzqTU.js → chunk-QN33PNHL-GPo-rJQo.js} +1 -1
  16. package/dist/client/assets/{chunk-QZHKN3VN-B1rMgEw-.js → chunk-QZHKN3VN-B_C9DaRq.js} +1 -1
  17. package/dist/client/assets/{chunk-TZMSLE5B-BEcRDS9V.js → chunk-TZMSLE5B-S-3x8sBa.js} +1 -1
  18. package/dist/client/assets/classDiagram-2ON5EDUG-DQhzPeBS.js +1 -0
  19. package/dist/client/assets/classDiagram-v2-WZHVMYZB-DQhzPeBS.js +1 -0
  20. package/dist/client/assets/clone-DMVFMBGc.js +1 -0
  21. package/dist/client/assets/{cose-bilkent-S5V4N54A-DQnvhn8W.js → cose-bilkent-S5V4N54A-CkOCsZaq.js} +1 -1
  22. package/dist/client/assets/{dagre-6UL2VRFP-Y6UFkfVj.js → dagre-6UL2VRFP-BgafXZE_.js} +1 -1
  23. package/dist/client/assets/{diagram-PSM6KHXK-Cn_p_oe9.js → diagram-PSM6KHXK-B94pgJMa.js} +1 -1
  24. package/dist/client/assets/{diagram-QEK2KX5R-CWHFM00-.js → diagram-QEK2KX5R-Cp31-19s.js} +1 -1
  25. package/dist/client/assets/{diagram-S2PKOQOG-C0TgWCYA.js → diagram-S2PKOQOG-DYBICeUc.js} +1 -1
  26. package/dist/client/assets/{erDiagram-Q2GNP2WA-BP1po3AK.js → erDiagram-Q2GNP2WA-CtGriMBo.js} +1 -1
  27. package/dist/client/assets/{flowDiagram-NV44I4VS-B5oUkhMT.js → flowDiagram-NV44I4VS-COxPbEGE.js} +1 -1
  28. package/dist/client/assets/{ganttDiagram-JELNMOA3-C7DXX2RL.js → ganttDiagram-JELNMOA3-DbKBFolt.js} +1 -1
  29. package/dist/client/assets/{gitGraphDiagram-V2S2FVAM-Dn30v3Fe.js → gitGraphDiagram-V2S2FVAM-C2wSH-Kc.js} +1 -1
  30. package/dist/client/assets/{graph-E5kkHB_s.js → graph-DaaTn_R3.js} +1 -1
  31. package/dist/client/assets/{highlighted-body-B3W2YXNL-B2bPrtWU.js → highlighted-body-B3W2YXNL-DtviwfC3.js} +1 -1
  32. package/dist/client/assets/{index-D6MDOO4K.js → index-7TsQ0ECj.js} +1 -1
  33. package/dist/client/assets/{index-CYUAdSi5.js → index-BVrgCAf-.js} +1 -1
  34. package/dist/client/assets/{index-CVOnvTFc.js → index-C7bNbG8y.js} +1 -1
  35. package/dist/client/assets/{index-BScD8646.js → index-CCYaly9B.js} +1 -1
  36. package/dist/client/assets/{index-D50A2A_K.js → index-CX80oF1r.js} +1 -1
  37. package/dist/client/assets/{index-A7maATW7.js → index-CcSj5izp.js} +1 -1
  38. package/dist/client/assets/{index-DKIwN46L.js → index-D0_09mo4.js} +1 -1
  39. package/dist/client/assets/{index-BlpyLCQK.js → index-D7q0_5QM.js} +1 -1
  40. package/dist/client/assets/{index-DzUf0Wwy.js → index-DrI_NSdF.js} +1 -1
  41. package/dist/client/assets/{index-BuqiLymH.js → index-DyQvtVvm.js} +1 -1
  42. package/dist/client/assets/{index-DOWIe80D.js → index-Za_02jKM.js} +1 -1
  43. package/dist/client/assets/{index-B2f2Xih0.js → index-_t5iDB-C.js} +1 -1
  44. package/dist/client/assets/{index-B-miY5Sp.js → index-opVluoe3.js} +1 -1
  45. package/dist/client/assets/{infoDiagram-HS3SLOUP-CoxVQgxs.js → infoDiagram-HS3SLOUP-Dk8CWKqr.js} +1 -1
  46. package/dist/client/assets/{journeyDiagram-XKPGCS4Q-BUPqESWB.js → journeyDiagram-XKPGCS4Q-m1ppiMnj.js} +1 -1
  47. package/dist/client/assets/{kanban-definition-3W4ZIXB7-DDooJc-Z.js → kanban-definition-3W4ZIXB7-D773Xq92.js} +1 -1
  48. package/dist/client/assets/{layout-DQ2tNoC7.js → layout-BAIuDSku.js} +1 -1
  49. package/dist/client/assets/{main-BbHA32iD.js → main-DqwTx3Gh.js} +316 -314
  50. package/dist/client/assets/main-O_ChqBMk.css +1 -0
  51. package/dist/client/assets/{mindmap-definition-VGOIOE7T-BBoouni0.js → mindmap-definition-VGOIOE7T-Bg1vqOmZ.js} +1 -1
  52. package/dist/client/assets/{pieDiagram-ADFJNKIX-DAO1Cf3O.js → pieDiagram-ADFJNKIX-Dn1CIoU2.js} +1 -1
  53. package/dist/client/assets/{quadrantDiagram-AYHSOK5B-CjJp6wOV.js → quadrantDiagram-AYHSOK5B-4MitvjCc.js} +1 -1
  54. package/dist/client/assets/{requirementDiagram-UZGBJVZJ-CX3MPDiG.js → requirementDiagram-UZGBJVZJ-CbDKyXsd.js} +1 -1
  55. package/dist/client/assets/{sankeyDiagram-TZEHDZUN-Cqnsrnu8.js → sankeyDiagram-TZEHDZUN-Ci-g4_43.js} +1 -1
  56. package/dist/client/assets/{sequenceDiagram-WL72ISMW-CTJ2qJj_.js → sequenceDiagram-WL72ISMW-Cmgz_1lw.js} +1 -1
  57. package/dist/client/assets/{stateDiagram-FKZM4ZOC-Cy-jjqJZ.js → stateDiagram-FKZM4ZOC-B1Qm5pG_.js} +1 -1
  58. package/dist/client/assets/stateDiagram-v2-4FDKWEC3-DNWMNm7n.js +1 -0
  59. package/dist/client/assets/{timeline-definition-IT6M3QCI-Bbb0ib0X.js → timeline-definition-IT6M3QCI-BIC31zfO.js} +1 -1
  60. package/dist/client/assets/{treemap-GDKQZRPO-DUB2cMCc.js → treemap-GDKQZRPO-BOS0YG8-.js} +1 -1
  61. package/dist/client/assets/{worktree._worktreeId-CZWwGpYU.js → worktree._worktreeId-DR6KbghZ.js} +1 -1
  62. package/dist/client/assets/{worktree._worktreeId-DSiEfzZW.js → worktree._worktreeId-ex_E5koV.js} +1 -1
  63. package/dist/client/assets/{xychartDiagram-PRI3JC2R-CI6Pnd76.js → xychartDiagram-PRI3JC2R-C8I9WhOF.js} +1 -1
  64. package/dist/openapi.json +501 -7
  65. package/dist/start-server.mjs +2698 -1215
  66. package/package.json +7 -7
  67. package/dist/client/assets/channel-BhaORH-2.js +0 -1
  68. package/dist/client/assets/classDiagram-2ON5EDUG-iB9V-fQK.js +0 -1
  69. package/dist/client/assets/classDiagram-v2-WZHVMYZB-iB9V-fQK.js +0 -1
  70. package/dist/client/assets/clone-UwjnYJkb.js +0 -1
  71. package/dist/client/assets/main-Bump8gDQ.css +0 -1
  72. package/dist/client/assets/stateDiagram-v2-4FDKWEC3-CT80STo9.js +0 -1
@@ -1,4 +1,4 @@
1
- import{m as gi,n as xi,O as Xt,M as di,o as pi,p as fi,_ as n,v as Nt,a5 as yi,w as mi,V as bi,a3 as Ct,z as Ai,a1 as Yt,a2 as wi,an as Ci,ao as Bt,ap as Si,am as Wt,aq as zt}from"./main-BbHA32iD.js";var mt=(function(){var s=n(function(W,r,u,g){for(u=u||{},g=W.length;g--;u[W[g]]=r);return u},"o"),t=[1,10,12,14,16,18,19,21,23],i=[2,6],e=[1,3],a=[1,5],c=[1,6],d=[1,7],m=[1,5,10,12,14,16,18,19,21,23,34,35,36],b=[1,25],P=[1,26],I=[1,28],R=[1,29],L=[1,30],z=[1,31],F=[1,32],D=[1,33],V=[1,34],f=[1,35],C=[1,36],l=[1,37],M=[1,43],B=[1,42],U=[1,47],X=[1,50],h=[1,10,12,14,16,18,19,21,23,34,35,36],k=[1,10,12,14,16,18,19,21,23,24,26,27,28,34,35,36],w=[1,10,12,14,16,18,19,21,23,24,26,27,28,34,35,36,41,42,43,44,45,46,47,48,49,50],S=[1,64],$={trace:n(function(){},"trace"),yy:{},symbols_:{error:2,start:3,eol:4,XYCHART:5,chartConfig:6,document:7,CHART_ORIENTATION:8,statement:9,title:10,text:11,X_AXIS:12,parseXAxis:13,Y_AXIS:14,parseYAxis:15,LINE:16,plotData:17,BAR:18,acc_title:19,acc_title_value:20,acc_descr:21,acc_descr_value:22,acc_descr_multiline_value:23,SQUARE_BRACES_START:24,commaSeparatedNumbers:25,SQUARE_BRACES_END:26,NUMBER_WITH_DECIMAL:27,COMMA:28,xAxisData:29,bandData:30,ARROW_DELIMITER:31,commaSeparatedTexts:32,yAxisData:33,NEWLINE:34,SEMI:35,EOF:36,alphaNum:37,STR:38,MD_STR:39,alphaNumToken:40,AMP:41,NUM:42,ALPHA:43,PLUS:44,EQUALS:45,MULT:46,DOT:47,BRKT:48,MINUS:49,UNDERSCORE:50,$accept:0,$end:1},terminals_:{2:"error",5:"XYCHART",8:"CHART_ORIENTATION",10:"title",12:"X_AXIS",14:"Y_AXIS",16:"LINE",18:"BAR",19:"acc_title",20:"acc_title_value",21:"acc_descr",22:"acc_descr_value",23:"acc_descr_multiline_value",24:"SQUARE_BRACES_START",26:"SQUARE_BRACES_END",27:"NUMBER_WITH_DECIMAL",28:"COMMA",31:"ARROW_DELIMITER",34:"NEWLINE",35:"SEMI",36:"EOF",38:"STR",39:"MD_STR",41:"AMP",42:"NUM",43:"ALPHA",44:"PLUS",45:"EQUALS",46:"MULT",47:"DOT",48:"BRKT",49:"MINUS",50:"UNDERSCORE"},productions_:[0,[3,2],[3,3],[3,2],[3,1],[6,1],[7,0],[7,2],[9,2],[9,2],[9,2],[9,2],[9,2],[9,3],[9,2],[9,3],[9,2],[9,2],[9,1],[17,3],[25,3],[25,1],[13,1],[13,2],[13,1],[29,1],[29,3],[30,3],[32,3],[32,1],[15,1],[15,2],[15,1],[33,3],[4,1],[4,1],[4,1],[11,1],[11,1],[11,1],[37,1],[37,2],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1]],performAction:n(function(r,u,g,x,A,o,nt){var p=o.length-1;switch(A){case 5:x.setOrientation(o[p]);break;case 9:x.setDiagramTitle(o[p].text.trim());break;case 12:x.setLineData({text:"",type:"text"},o[p]);break;case 13:x.setLineData(o[p-1],o[p]);break;case 14:x.setBarData({text:"",type:"text"},o[p]);break;case 15:x.setBarData(o[p-1],o[p]);break;case 16:this.$=o[p].trim(),x.setAccTitle(this.$);break;case 17:case 18:this.$=o[p].trim(),x.setAccDescription(this.$);break;case 19:this.$=o[p-1];break;case 20:this.$=[Number(o[p-2]),...o[p]];break;case 21:this.$=[Number(o[p])];break;case 22:x.setXAxisTitle(o[p]);break;case 23:x.setXAxisTitle(o[p-1]);break;case 24:x.setXAxisTitle({type:"text",text:""});break;case 25:x.setXAxisBand(o[p]);break;case 26:x.setXAxisRangeData(Number(o[p-2]),Number(o[p]));break;case 27:this.$=o[p-1];break;case 28:this.$=[o[p-2],...o[p]];break;case 29:this.$=[o[p]];break;case 30:x.setYAxisTitle(o[p]);break;case 31:x.setYAxisTitle(o[p-1]);break;case 32:x.setYAxisTitle({type:"text",text:""});break;case 33:x.setYAxisRangeData(Number(o[p-2]),Number(o[p]));break;case 37:this.$={text:o[p],type:"text"};break;case 38:this.$={text:o[p],type:"text"};break;case 39:this.$={text:o[p],type:"markdown"};break;case 40:this.$=o[p];break;case 41:this.$=o[p-1]+""+o[p];break}},"anonymous"),table:[s(t,i,{3:1,4:2,7:4,5:e,34:a,35:c,36:d}),{1:[3]},s(t,i,{4:2,7:4,3:8,5:e,34:a,35:c,36:d}),s(t,i,{4:2,7:4,6:9,3:10,5:e,8:[1,11],34:a,35:c,36:d}),{1:[2,4],9:12,10:[1,13],12:[1,14],14:[1,15],16:[1,16],18:[1,17],19:[1,18],21:[1,19],23:[1,20]},s(m,[2,34]),s(m,[2,35]),s(m,[2,36]),{1:[2,1]},s(t,i,{4:2,7:4,3:21,5:e,34:a,35:c,36:d}),{1:[2,3]},s(m,[2,5]),s(t,[2,7],{4:22,34:a,35:c,36:d}),{11:23,37:24,38:b,39:P,40:27,41:I,42:R,43:L,44:z,45:F,46:D,47:V,48:f,49:C,50:l},{11:39,13:38,24:M,27:B,29:40,30:41,37:24,38:b,39:P,40:27,41:I,42:R,43:L,44:z,45:F,46:D,47:V,48:f,49:C,50:l},{11:45,15:44,27:U,33:46,37:24,38:b,39:P,40:27,41:I,42:R,43:L,44:z,45:F,46:D,47:V,48:f,49:C,50:l},{11:49,17:48,24:X,37:24,38:b,39:P,40:27,41:I,42:R,43:L,44:z,45:F,46:D,47:V,48:f,49:C,50:l},{11:52,17:51,24:X,37:24,38:b,39:P,40:27,41:I,42:R,43:L,44:z,45:F,46:D,47:V,48:f,49:C,50:l},{20:[1,53]},{22:[1,54]},s(h,[2,18]),{1:[2,2]},s(h,[2,8]),s(h,[2,9]),s(k,[2,37],{40:55,41:I,42:R,43:L,44:z,45:F,46:D,47:V,48:f,49:C,50:l}),s(k,[2,38]),s(k,[2,39]),s(w,[2,40]),s(w,[2,42]),s(w,[2,43]),s(w,[2,44]),s(w,[2,45]),s(w,[2,46]),s(w,[2,47]),s(w,[2,48]),s(w,[2,49]),s(w,[2,50]),s(w,[2,51]),s(h,[2,10]),s(h,[2,22],{30:41,29:56,24:M,27:B}),s(h,[2,24]),s(h,[2,25]),{31:[1,57]},{11:59,32:58,37:24,38:b,39:P,40:27,41:I,42:R,43:L,44:z,45:F,46:D,47:V,48:f,49:C,50:l},s(h,[2,11]),s(h,[2,30],{33:60,27:U}),s(h,[2,32]),{31:[1,61]},s(h,[2,12]),{17:62,24:X},{25:63,27:S},s(h,[2,14]),{17:65,24:X},s(h,[2,16]),s(h,[2,17]),s(w,[2,41]),s(h,[2,23]),{27:[1,66]},{26:[1,67]},{26:[2,29],28:[1,68]},s(h,[2,31]),{27:[1,69]},s(h,[2,13]),{26:[1,70]},{26:[2,21],28:[1,71]},s(h,[2,15]),s(h,[2,26]),s(h,[2,27]),{11:59,32:72,37:24,38:b,39:P,40:27,41:I,42:R,43:L,44:z,45:F,46:D,47:V,48:f,49:C,50:l},s(h,[2,33]),s(h,[2,19]),{25:73,27:S},{26:[2,28]},{26:[2,20]}],defaultActions:{8:[2,1],10:[2,3],21:[2,2],72:[2,28],73:[2,20]},parseError:n(function(r,u){if(u.recoverable)this.trace(r);else{var g=new Error(r);throw g.hash=u,g}},"parseError"),parse:n(function(r){var u=this,g=[0],x=[],A=[null],o=[],nt=this.table,p="",lt=0,Et=0,hi=2,It=1,li=o.slice.call(arguments,1),_=Object.create(this.lexer),Y={yy:{}};for(var dt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,dt)&&(Y.yy[dt]=this.yy[dt]);_.setInput(r,Y.yy),Y.yy.lexer=_,Y.yy.parser=this,typeof _.yylloc>"u"&&(_.yylloc={});var pt=_.yylloc;o.push(pt);var ci=_.options&&_.options.ranges;typeof Y.yy.parseError=="function"?this.parseError=Y.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ui(v){g.length=g.length-2*v,A.length=A.length-v,o.length=o.length-v}n(ui,"popStack");function Vt(){var v;return v=x.pop()||_.lex()||It,typeof v!="number"&&(v instanceof Array&&(x=v,v=x.pop()),v=u.symbols_[v]||v),v}n(Vt,"lex");for(var T,H,E,ft,q={},ct,O,Mt,ut;;){if(H=g[g.length-1],this.defaultActions[H]?E=this.defaultActions[H]:((T===null||typeof T>"u")&&(T=Vt()),E=nt[H]&&nt[H][T]),typeof E>"u"||!E.length||!E[0]){var yt="";ut=[];for(ct in nt[H])this.terminals_[ct]&&ct>hi&&ut.push("'"+this.terminals_[ct]+"'");_.showPosition?yt="Parse error on line "+(lt+1)+`:
1
+ import{m as gi,n as xi,O as Xt,M as di,o as pi,p as fi,_ as n,v as Nt,a5 as yi,w as mi,V as bi,a3 as Ct,z as Ai,a1 as Yt,a2 as wi,an as Ci,ao as Bt,ap as Si,am as Wt,aq as zt}from"./main-DqwTx3Gh.js";var mt=(function(){var s=n(function(W,r,u,g){for(u=u||{},g=W.length;g--;u[W[g]]=r);return u},"o"),t=[1,10,12,14,16,18,19,21,23],i=[2,6],e=[1,3],a=[1,5],c=[1,6],d=[1,7],m=[1,5,10,12,14,16,18,19,21,23,34,35,36],b=[1,25],P=[1,26],I=[1,28],R=[1,29],L=[1,30],z=[1,31],F=[1,32],D=[1,33],V=[1,34],f=[1,35],C=[1,36],l=[1,37],M=[1,43],B=[1,42],U=[1,47],X=[1,50],h=[1,10,12,14,16,18,19,21,23,34,35,36],k=[1,10,12,14,16,18,19,21,23,24,26,27,28,34,35,36],w=[1,10,12,14,16,18,19,21,23,24,26,27,28,34,35,36,41,42,43,44,45,46,47,48,49,50],S=[1,64],$={trace:n(function(){},"trace"),yy:{},symbols_:{error:2,start:3,eol:4,XYCHART:5,chartConfig:6,document:7,CHART_ORIENTATION:8,statement:9,title:10,text:11,X_AXIS:12,parseXAxis:13,Y_AXIS:14,parseYAxis:15,LINE:16,plotData:17,BAR:18,acc_title:19,acc_title_value:20,acc_descr:21,acc_descr_value:22,acc_descr_multiline_value:23,SQUARE_BRACES_START:24,commaSeparatedNumbers:25,SQUARE_BRACES_END:26,NUMBER_WITH_DECIMAL:27,COMMA:28,xAxisData:29,bandData:30,ARROW_DELIMITER:31,commaSeparatedTexts:32,yAxisData:33,NEWLINE:34,SEMI:35,EOF:36,alphaNum:37,STR:38,MD_STR:39,alphaNumToken:40,AMP:41,NUM:42,ALPHA:43,PLUS:44,EQUALS:45,MULT:46,DOT:47,BRKT:48,MINUS:49,UNDERSCORE:50,$accept:0,$end:1},terminals_:{2:"error",5:"XYCHART",8:"CHART_ORIENTATION",10:"title",12:"X_AXIS",14:"Y_AXIS",16:"LINE",18:"BAR",19:"acc_title",20:"acc_title_value",21:"acc_descr",22:"acc_descr_value",23:"acc_descr_multiline_value",24:"SQUARE_BRACES_START",26:"SQUARE_BRACES_END",27:"NUMBER_WITH_DECIMAL",28:"COMMA",31:"ARROW_DELIMITER",34:"NEWLINE",35:"SEMI",36:"EOF",38:"STR",39:"MD_STR",41:"AMP",42:"NUM",43:"ALPHA",44:"PLUS",45:"EQUALS",46:"MULT",47:"DOT",48:"BRKT",49:"MINUS",50:"UNDERSCORE"},productions_:[0,[3,2],[3,3],[3,2],[3,1],[6,1],[7,0],[7,2],[9,2],[9,2],[9,2],[9,2],[9,2],[9,3],[9,2],[9,3],[9,2],[9,2],[9,1],[17,3],[25,3],[25,1],[13,1],[13,2],[13,1],[29,1],[29,3],[30,3],[32,3],[32,1],[15,1],[15,2],[15,1],[33,3],[4,1],[4,1],[4,1],[11,1],[11,1],[11,1],[37,1],[37,2],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1]],performAction:n(function(r,u,g,x,A,o,nt){var p=o.length-1;switch(A){case 5:x.setOrientation(o[p]);break;case 9:x.setDiagramTitle(o[p].text.trim());break;case 12:x.setLineData({text:"",type:"text"},o[p]);break;case 13:x.setLineData(o[p-1],o[p]);break;case 14:x.setBarData({text:"",type:"text"},o[p]);break;case 15:x.setBarData(o[p-1],o[p]);break;case 16:this.$=o[p].trim(),x.setAccTitle(this.$);break;case 17:case 18:this.$=o[p].trim(),x.setAccDescription(this.$);break;case 19:this.$=o[p-1];break;case 20:this.$=[Number(o[p-2]),...o[p]];break;case 21:this.$=[Number(o[p])];break;case 22:x.setXAxisTitle(o[p]);break;case 23:x.setXAxisTitle(o[p-1]);break;case 24:x.setXAxisTitle({type:"text",text:""});break;case 25:x.setXAxisBand(o[p]);break;case 26:x.setXAxisRangeData(Number(o[p-2]),Number(o[p]));break;case 27:this.$=o[p-1];break;case 28:this.$=[o[p-2],...o[p]];break;case 29:this.$=[o[p]];break;case 30:x.setYAxisTitle(o[p]);break;case 31:x.setYAxisTitle(o[p-1]);break;case 32:x.setYAxisTitle({type:"text",text:""});break;case 33:x.setYAxisRangeData(Number(o[p-2]),Number(o[p]));break;case 37:this.$={text:o[p],type:"text"};break;case 38:this.$={text:o[p],type:"text"};break;case 39:this.$={text:o[p],type:"markdown"};break;case 40:this.$=o[p];break;case 41:this.$=o[p-1]+""+o[p];break}},"anonymous"),table:[s(t,i,{3:1,4:2,7:4,5:e,34:a,35:c,36:d}),{1:[3]},s(t,i,{4:2,7:4,3:8,5:e,34:a,35:c,36:d}),s(t,i,{4:2,7:4,6:9,3:10,5:e,8:[1,11],34:a,35:c,36:d}),{1:[2,4],9:12,10:[1,13],12:[1,14],14:[1,15],16:[1,16],18:[1,17],19:[1,18],21:[1,19],23:[1,20]},s(m,[2,34]),s(m,[2,35]),s(m,[2,36]),{1:[2,1]},s(t,i,{4:2,7:4,3:21,5:e,34:a,35:c,36:d}),{1:[2,3]},s(m,[2,5]),s(t,[2,7],{4:22,34:a,35:c,36:d}),{11:23,37:24,38:b,39:P,40:27,41:I,42:R,43:L,44:z,45:F,46:D,47:V,48:f,49:C,50:l},{11:39,13:38,24:M,27:B,29:40,30:41,37:24,38:b,39:P,40:27,41:I,42:R,43:L,44:z,45:F,46:D,47:V,48:f,49:C,50:l},{11:45,15:44,27:U,33:46,37:24,38:b,39:P,40:27,41:I,42:R,43:L,44:z,45:F,46:D,47:V,48:f,49:C,50:l},{11:49,17:48,24:X,37:24,38:b,39:P,40:27,41:I,42:R,43:L,44:z,45:F,46:D,47:V,48:f,49:C,50:l},{11:52,17:51,24:X,37:24,38:b,39:P,40:27,41:I,42:R,43:L,44:z,45:F,46:D,47:V,48:f,49:C,50:l},{20:[1,53]},{22:[1,54]},s(h,[2,18]),{1:[2,2]},s(h,[2,8]),s(h,[2,9]),s(k,[2,37],{40:55,41:I,42:R,43:L,44:z,45:F,46:D,47:V,48:f,49:C,50:l}),s(k,[2,38]),s(k,[2,39]),s(w,[2,40]),s(w,[2,42]),s(w,[2,43]),s(w,[2,44]),s(w,[2,45]),s(w,[2,46]),s(w,[2,47]),s(w,[2,48]),s(w,[2,49]),s(w,[2,50]),s(w,[2,51]),s(h,[2,10]),s(h,[2,22],{30:41,29:56,24:M,27:B}),s(h,[2,24]),s(h,[2,25]),{31:[1,57]},{11:59,32:58,37:24,38:b,39:P,40:27,41:I,42:R,43:L,44:z,45:F,46:D,47:V,48:f,49:C,50:l},s(h,[2,11]),s(h,[2,30],{33:60,27:U}),s(h,[2,32]),{31:[1,61]},s(h,[2,12]),{17:62,24:X},{25:63,27:S},s(h,[2,14]),{17:65,24:X},s(h,[2,16]),s(h,[2,17]),s(w,[2,41]),s(h,[2,23]),{27:[1,66]},{26:[1,67]},{26:[2,29],28:[1,68]},s(h,[2,31]),{27:[1,69]},s(h,[2,13]),{26:[1,70]},{26:[2,21],28:[1,71]},s(h,[2,15]),s(h,[2,26]),s(h,[2,27]),{11:59,32:72,37:24,38:b,39:P,40:27,41:I,42:R,43:L,44:z,45:F,46:D,47:V,48:f,49:C,50:l},s(h,[2,33]),s(h,[2,19]),{25:73,27:S},{26:[2,28]},{26:[2,20]}],defaultActions:{8:[2,1],10:[2,3],21:[2,2],72:[2,28],73:[2,20]},parseError:n(function(r,u){if(u.recoverable)this.trace(r);else{var g=new Error(r);throw g.hash=u,g}},"parseError"),parse:n(function(r){var u=this,g=[0],x=[],A=[null],o=[],nt=this.table,p="",lt=0,Et=0,hi=2,It=1,li=o.slice.call(arguments,1),_=Object.create(this.lexer),Y={yy:{}};for(var dt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,dt)&&(Y.yy[dt]=this.yy[dt]);_.setInput(r,Y.yy),Y.yy.lexer=_,Y.yy.parser=this,typeof _.yylloc>"u"&&(_.yylloc={});var pt=_.yylloc;o.push(pt);var ci=_.options&&_.options.ranges;typeof Y.yy.parseError=="function"?this.parseError=Y.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ui(v){g.length=g.length-2*v,A.length=A.length-v,o.length=o.length-v}n(ui,"popStack");function Vt(){var v;return v=x.pop()||_.lex()||It,typeof v!="number"&&(v instanceof Array&&(x=v,v=x.pop()),v=u.symbols_[v]||v),v}n(Vt,"lex");for(var T,H,E,ft,q={},ct,O,Mt,ut;;){if(H=g[g.length-1],this.defaultActions[H]?E=this.defaultActions[H]:((T===null||typeof T>"u")&&(T=Vt()),E=nt[H]&&nt[H][T]),typeof E>"u"||!E.length||!E[0]){var yt="";ut=[];for(ct in nt[H])this.terminals_[ct]&&ct>hi&&ut.push("'"+this.terminals_[ct]+"'");_.showPosition?yt="Parse error on line "+(lt+1)+`:
2
2
  `+_.showPosition()+`
3
3
  Expecting `+ut.join(", ")+", got '"+(this.terminals_[T]||T)+"'":yt="Parse error on line "+(lt+1)+": Unexpected "+(T==It?"end of input":"'"+(this.terminals_[T]||T)+"'"),this.parseError(yt,{text:_.match,token:this.terminals_[T]||T,line:_.yylineno,loc:pt,expected:ut})}if(E[0]instanceof Array&&E.length>1)throw new Error("Parse Error: multiple actions possible at state: "+H+", token: "+T);switch(E[0]){case 1:g.push(T),A.push(_.yytext),o.push(_.yylloc),g.push(E[1]),T=null,Et=_.yyleng,p=_.yytext,lt=_.yylineno,pt=_.yylloc;break;case 2:if(O=this.productions_[E[1]][1],q.$=A[A.length-O],q._$={first_line:o[o.length-(O||1)].first_line,last_line:o[o.length-1].last_line,first_column:o[o.length-(O||1)].first_column,last_column:o[o.length-1].last_column},ci&&(q._$.range=[o[o.length-(O||1)].range[0],o[o.length-1].range[1]]),ft=this.performAction.apply(q,[p,Et,lt,Y.yy,E[1],A,o].concat(li)),typeof ft<"u")return ft;O&&(g=g.slice(0,-1*O*2),A=A.slice(0,-1*O),o=o.slice(0,-1*O)),g.push(this.productions_[E[1]][0]),A.push(q.$),o.push(q._$),Mt=nt[g[g.length-2]][g[g.length-1]],g.push(Mt);break;case 3:return!0}}return!0},"parse")},Lt=(function(){var W={EOF:1,parseError:n(function(u,g){if(this.yy.parser)this.yy.parser.parseError(u,g);else throw new Error(u)},"parseError"),setInput:n(function(r,u){return this.yy=u||this.yy||{},this._input=r,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:n(function(){var r=this._input[0];this.yytext+=r,this.yyleng++,this.offset++,this.match+=r,this.matched+=r;var u=r.match(/(?:\r\n?|\n).*/g);return u?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),r},"input"),unput:n(function(r){var u=r.length,g=r.split(/(?:\r\n?|\n)/g);this._input=r+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-u),this.offset-=u;var x=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),g.length-1&&(this.yylineno-=g.length-1);var A=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:g?(g.length===x.length?this.yylloc.first_column:0)+x[x.length-g.length].length-g[0].length:this.yylloc.first_column-u},this.options.ranges&&(this.yylloc.range=[A[0],A[0]+this.yyleng-u]),this.yyleng=this.yytext.length,this},"unput"),more:n(function(){return this._more=!0,this},"more"),reject:n(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
4
4
  `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:n(function(r){this.unput(this.match.slice(r))},"less"),pastInput:n(function(){var r=this.matched.substr(0,this.matched.length-this.match.length);return(r.length>20?"...":"")+r.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:n(function(){var r=this.match;return r.length<20&&(r+=this._input.substr(0,20-r.length)),(r.substr(0,20)+(r.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:n(function(){var r=this.pastInput(),u=new Array(r.length+1).join("-");return r+this.upcomingInput()+`
package/dist/openapi.json CHANGED
@@ -184,6 +184,66 @@
184
184
  }
185
185
  }
186
186
  },
187
+ "/accountUsage.list": {
188
+ "get": {
189
+ "operationId": "accountUsage.list",
190
+ "tags": [
191
+ "accountUsage"
192
+ ],
193
+ "responses": {
194
+ "200": {
195
+ "description": "Successful response",
196
+ "content": {
197
+ "application/json": {
198
+ "schema": {
199
+ "type": "object",
200
+ "properties": {
201
+ "result": {
202
+ "type": "object",
203
+ "properties": {
204
+ "data": {
205
+ "$ref": "#/components/schemas/AccountUsageReport"
206
+ }
207
+ },
208
+ "required": [
209
+ "data"
210
+ ]
211
+ }
212
+ },
213
+ "required": [
214
+ "result"
215
+ ]
216
+ }
217
+ }
218
+ }
219
+ },
220
+ "default": {
221
+ "$ref": "#/components/responses/Error"
222
+ }
223
+ },
224
+ "parameters": [
225
+ {
226
+ "name": "input",
227
+ "in": "query",
228
+ "required": true,
229
+ "style": "deepObject",
230
+ "content": {
231
+ "application/json": {
232
+ "schema": {
233
+ "type": "object",
234
+ "properties": {
235
+ "refresh": {
236
+ "type": "boolean"
237
+ }
238
+ },
239
+ "additionalProperties": false
240
+ }
241
+ }
242
+ }
243
+ }
244
+ ]
245
+ }
246
+ },
187
247
  "/hooks.check": {
188
248
  "get": {
189
249
  "operationId": "hooks.check",
@@ -8684,6 +8744,97 @@
8684
8744
  }
8685
8745
  }
8686
8746
  },
8747
+ "/reviews.rerunChecks": {
8748
+ "post": {
8749
+ "operationId": "reviews.rerunChecks",
8750
+ "description": "Run CI jobs of the worktree's branch again.",
8751
+ "tags": [
8752
+ "reviews"
8753
+ ],
8754
+ "responses": {
8755
+ "200": {
8756
+ "description": "Successful response",
8757
+ "content": {
8758
+ "application/json": {
8759
+ "schema": {
8760
+ "type": "object",
8761
+ "properties": {
8762
+ "result": {
8763
+ "type": "object",
8764
+ "properties": {
8765
+ "data": {
8766
+ "type": "object",
8767
+ "properties": {
8768
+ "ok": {
8769
+ "type": "boolean",
8770
+ "const": true
8771
+ }
8772
+ },
8773
+ "required": [
8774
+ "ok"
8775
+ ],
8776
+ "additionalProperties": false
8777
+ }
8778
+ },
8779
+ "required": [
8780
+ "data"
8781
+ ]
8782
+ }
8783
+ },
8784
+ "required": [
8785
+ "result"
8786
+ ]
8787
+ }
8788
+ }
8789
+ }
8790
+ },
8791
+ "default": {
8792
+ "$ref": "#/components/responses/Error"
8793
+ }
8794
+ },
8795
+ "requestBody": {
8796
+ "required": true,
8797
+ "content": {
8798
+ "application/json": {
8799
+ "schema": {
8800
+ "type": "object",
8801
+ "properties": {
8802
+ "worktreeId": {
8803
+ "type": "string"
8804
+ },
8805
+ "targets": {
8806
+ "type": "array",
8807
+ "items": {
8808
+ "type": "object",
8809
+ "properties": {
8810
+ "runId": {
8811
+ "type": "string"
8812
+ },
8813
+ "jobId": {
8814
+ "type": "string"
8815
+ },
8816
+ "failedOnly": {
8817
+ "type": "boolean"
8818
+ }
8819
+ },
8820
+ "required": [
8821
+ "runId"
8822
+ ],
8823
+ "additionalProperties": false
8824
+ }
8825
+ }
8826
+ },
8827
+ "required": [
8828
+ "worktreeId",
8829
+ "targets"
8830
+ ],
8831
+ "additionalProperties": false
8832
+ }
8833
+ }
8834
+ }
8835
+ }
8836
+ }
8837
+ },
8687
8838
  "/services.health": {
8688
8839
  "get": {
8689
8840
  "operationId": "services.health",
@@ -8813,6 +8964,9 @@
8813
8964
  "active",
8814
8965
  "background"
8815
8966
  ]
8967
+ },
8968
+ "clientId": {
8969
+ "type": "string"
8816
8970
  }
8817
8971
  },
8818
8972
  "required": [
@@ -8825,6 +8979,73 @@
8825
8979
  }
8826
8980
  }
8827
8981
  },
8982
+ "/services.releaseActivity": {
8983
+ "post": {
8984
+ "operationId": "services.releaseActivity",
8985
+ "tags": [
8986
+ "services"
8987
+ ],
8988
+ "responses": {
8989
+ "200": {
8990
+ "description": "Successful response",
8991
+ "content": {
8992
+ "application/json": {
8993
+ "schema": {
8994
+ "type": "object",
8995
+ "properties": {
8996
+ "result": {
8997
+ "type": "object",
8998
+ "properties": {
8999
+ "data": {
9000
+ "type": "object",
9001
+ "properties": {
9002
+ "released": {
9003
+ "type": "boolean"
9004
+ }
9005
+ },
9006
+ "required": [
9007
+ "released"
9008
+ ],
9009
+ "additionalProperties": false
9010
+ }
9011
+ },
9012
+ "required": [
9013
+ "data"
9014
+ ]
9015
+ }
9016
+ },
9017
+ "required": [
9018
+ "result"
9019
+ ]
9020
+ }
9021
+ }
9022
+ }
9023
+ },
9024
+ "default": {
9025
+ "$ref": "#/components/responses/Error"
9026
+ }
9027
+ },
9028
+ "requestBody": {
9029
+ "required": true,
9030
+ "content": {
9031
+ "application/json": {
9032
+ "schema": {
9033
+ "type": "object",
9034
+ "properties": {
9035
+ "clientId": {
9036
+ "type": "string"
9037
+ }
9038
+ },
9039
+ "required": [
9040
+ "clientId"
9041
+ ],
9042
+ "additionalProperties": false
9043
+ }
9044
+ }
9045
+ }
9046
+ }
9047
+ }
9048
+ },
8828
9049
  "/services.getActivity": {
8829
9050
  "get": {
8830
9051
  "operationId": "services.getActivity",
@@ -8852,11 +9073,21 @@
8852
9073
  "active",
8853
9074
  "background"
8854
9075
  ],
8855
- "description": "Activity level controls how aggressively we poll git/CI status. The Electron\nmain process drives this via the `services.setActivity` tRPC mutation when\nthe window gains/loses focus or the laptop transitions on/off battery —\nsee `apps/desktop/src/main/services/activity-monitor.ts`. Other clients\n(CLI, web-only deployments) can leave it at the default `\"active\"`."
9076
+ "description": "How actively a client looks at Band. The branch-status poller picks its cadence from the most active live client."
9077
+ },
9078
+ "poller": {
9079
+ "type": "string",
9080
+ "enum": [
9081
+ "idle",
9082
+ "active",
9083
+ "background"
9084
+ ],
9085
+ "description": "Activity level controls how aggressively we poll git/CI status. Each UI\nreports its own through `services.setActivity` (window focus and power\nstate, see `apps/web/src/lib/activity-reporter.ts`); `clientActivityService`\nkeeps one entry per client, drops one that stops reporting, and the poller\nfollows the most active live client. With no live client the level is\n`\"idle\"`."
8856
9086
  }
8857
9087
  },
8858
9088
  "required": [
8859
- "activity"
9089
+ "activity",
9090
+ "poller"
8860
9091
  ],
8861
9092
  "additionalProperties": false
8862
9093
  }
@@ -9785,7 +10016,7 @@
9785
10016
  "type": "object",
9786
10017
  "properties": {
9787
10018
  "data": {
9788
- "$ref": "#/components/schemas/Settings"
10019
+ "$ref": "#/components/schemas/settings"
9789
10020
  }
9790
10021
  },
9791
10022
  "required": [
@@ -12038,6 +12269,76 @@
12038
12269
  }
12039
12270
  }
12040
12271
  },
12272
+ "/worktree.directAccess": {
12273
+ "post": {
12274
+ "operationId": "worktree.directAccess",
12275
+ "description": "A short-lived token for the worker that holds `worktreeId`, when that\nworker is `hostId`, the caller's own machine (the desktop app passes its\nworker's id). Null when the direct path does not apply, and the caller\nkeeps using the hub.",
12276
+ "tags": [
12277
+ "worktree"
12278
+ ],
12279
+ "responses": {
12280
+ "200": {
12281
+ "description": "Successful response",
12282
+ "content": {
12283
+ "application/json": {
12284
+ "schema": {
12285
+ "type": "object",
12286
+ "properties": {
12287
+ "result": {
12288
+ "type": "object",
12289
+ "properties": {
12290
+ "data": {
12291
+ "oneOf": [
12292
+ {
12293
+ "$ref": "#/components/schemas/DirectAccess"
12294
+ },
12295
+ {
12296
+ "type": "null"
12297
+ }
12298
+ ]
12299
+ }
12300
+ },
12301
+ "required": [
12302
+ "data"
12303
+ ]
12304
+ }
12305
+ },
12306
+ "required": [
12307
+ "result"
12308
+ ]
12309
+ }
12310
+ }
12311
+ }
12312
+ },
12313
+ "default": {
12314
+ "$ref": "#/components/responses/Error"
12315
+ }
12316
+ },
12317
+ "requestBody": {
12318
+ "required": true,
12319
+ "content": {
12320
+ "application/json": {
12321
+ "schema": {
12322
+ "type": "object",
12323
+ "properties": {
12324
+ "hostId": {
12325
+ "type": "string"
12326
+ },
12327
+ "worktreeId": {
12328
+ "type": "string"
12329
+ }
12330
+ },
12331
+ "required": [
12332
+ "hostId",
12333
+ "worktreeId"
12334
+ ],
12335
+ "additionalProperties": false
12336
+ }
12337
+ }
12338
+ }
12339
+ }
12340
+ }
12341
+ },
12041
12342
  "/worktree.getTerminalConfig": {
12042
12343
  "get": {
12043
12344
  "operationId": "worktree.getTerminalConfig",
@@ -19073,6 +19374,143 @@
19073
19374
  },
19074
19375
  "components": {
19075
19376
  "schemas": {
19377
+ "AccountUsageReport": {
19378
+ "type": "object",
19379
+ "properties": {
19380
+ "rows": {
19381
+ "type": "array",
19382
+ "items": {
19383
+ "$ref": "#/components/schemas/AccountUsageRow"
19384
+ }
19385
+ },
19386
+ "problems": {
19387
+ "type": "array",
19388
+ "items": {
19389
+ "$ref": "#/components/schemas/AccountUsageProblem"
19390
+ }
19391
+ }
19392
+ },
19393
+ "required": [
19394
+ "rows",
19395
+ "problems"
19396
+ ],
19397
+ "additionalProperties": false
19398
+ },
19399
+ "AccountUsageRow": {
19400
+ "type": "object",
19401
+ "properties": {
19402
+ "provider": {
19403
+ "type": "string",
19404
+ "enum": [
19405
+ "claude",
19406
+ "codex"
19407
+ ]
19408
+ },
19409
+ "account": {
19410
+ "type": [
19411
+ "string",
19412
+ "null"
19413
+ ],
19414
+ "description": "Email or account id. Null when the login names neither."
19415
+ },
19416
+ "plan": {
19417
+ "type": [
19418
+ "string",
19419
+ "null"
19420
+ ]
19421
+ },
19422
+ "windows": {
19423
+ "type": "array",
19424
+ "items": {
19425
+ "$ref": "#/components/schemas/UsageWindow"
19426
+ }
19427
+ },
19428
+ "hosts": {
19429
+ "type": "array",
19430
+ "items": {
19431
+ "type": "string"
19432
+ },
19433
+ "description": "Names of the hosts that hold this login."
19434
+ },
19435
+ "updatedAt": {
19436
+ "type": "number"
19437
+ }
19438
+ },
19439
+ "required": [
19440
+ "provider",
19441
+ "account",
19442
+ "plan",
19443
+ "windows",
19444
+ "hosts",
19445
+ "updatedAt"
19446
+ ],
19447
+ "additionalProperties": false
19448
+ },
19449
+ "UsageWindow": {
19450
+ "type": "object",
19451
+ "properties": {
19452
+ "label": {
19453
+ "type": "string",
19454
+ "description": "Short label for the bar: `5h`, `wk`, `Fable`."
19455
+ },
19456
+ "percent": {
19457
+ "type": "number",
19458
+ "description": "Share of the window used, 0 to 100."
19459
+ },
19460
+ "resetsAt": {
19461
+ "type": [
19462
+ "number",
19463
+ "null"
19464
+ ],
19465
+ "description": "Epoch ms when the window resets, or null when the provider does not say."
19466
+ }
19467
+ },
19468
+ "required": [
19469
+ "label",
19470
+ "percent",
19471
+ "resetsAt"
19472
+ ],
19473
+ "additionalProperties": false
19474
+ },
19475
+ "AccountUsageProblem": {
19476
+ "type": "object",
19477
+ "properties": {
19478
+ "provider": {
19479
+ "type": "string",
19480
+ "enum": [
19481
+ "claude",
19482
+ "codex"
19483
+ ]
19484
+ },
19485
+ "reason": {
19486
+ "type": "string",
19487
+ "enum": [
19488
+ "error",
19489
+ "offline",
19490
+ "not-logged-in",
19491
+ "expired",
19492
+ "rate-limited"
19493
+ ]
19494
+ },
19495
+ "message": {
19496
+ "type": "string",
19497
+ "description": "A short sentence for the popover, such as \"Not logged in on contabo\"."
19498
+ },
19499
+ "hosts": {
19500
+ "type": "array",
19501
+ "items": {
19502
+ "type": "string"
19503
+ }
19504
+ }
19505
+ },
19506
+ "required": [
19507
+ "provider",
19508
+ "reason",
19509
+ "message",
19510
+ "hosts"
19511
+ ],
19512
+ "additionalProperties": false
19513
+ },
19076
19514
  "HooksStatus": {
19077
19515
  "type": "object",
19078
19516
  "properties": {
@@ -19959,6 +20397,13 @@
19959
20397
  "type": "string",
19960
20398
  "description": "The worktree it replaced, marked superseded. Absent when a move removed it."
19961
20399
  },
20400
+ "backupRefs": {
20401
+ "type": "array",
20402
+ "items": {
20403
+ "type": "string"
20404
+ },
20405
+ "description": "Refs on the target host (`refs/band/backup/<worktree id>/<time>`) that keep what it held under\nthis name before the checkpoint replaced it. Absent when it held nothing."
20406
+ },
19962
20407
  "sourceRemoved": {
19963
20408
  "type": "boolean",
19964
20409
  "description": "For a move: whether the source worktree was removed."
@@ -20061,6 +20506,7 @@
20061
20506
  "no-checkpoint",
20062
20507
  "no-online-host",
20063
20508
  "agent-unavailable",
20509
+ "lease-active",
20064
20510
  "already-continued",
20065
20511
  "not-offline"
20066
20512
  ]
@@ -20076,6 +20522,14 @@
20076
20522
  "additionalProperties": false,
20077
20523
  "description": "Set when the work cannot continue, with a message that says why and what to do."
20078
20524
  },
20525
+ "leaseExpiresAt": {
20526
+ "type": "number",
20527
+ "description": "Epoch ms when the old host's lease ends. Until then the old copy may still be running, so the\nwork cannot continue elsewhere (`blocked.reason` is `lease-active`). The UI counts down to it."
20528
+ },
20529
+ "leaseRemainingMs": {
20530
+ "type": "number",
20531
+ "description": "The same moment as milliseconds left when the hub answered, so a client clock that is off cannot skew a countdown."
20532
+ },
20079
20533
  "checkpointId": {
20080
20534
  "type": "string"
20081
20535
  },
@@ -21559,6 +22013,23 @@
21559
22013
  "null"
21560
22014
  ],
21561
22015
  "description": "A one-line result, e.g. a check run's title or a commit status description."
22016
+ },
22017
+ "rerun": {
22018
+ "type": "object",
22019
+ "properties": {
22020
+ "runId": {
22021
+ "type": "string"
22022
+ },
22023
+ "jobId": {
22024
+ "type": "string"
22025
+ }
22026
+ },
22027
+ "required": [
22028
+ "runId",
22029
+ "jobId"
22030
+ ],
22031
+ "additionalProperties": false,
22032
+ "description": "Set when the forge can run this job again: the CI run it belongs to and\nits own id. Absent for checks from external apps and commit statuses."
21562
22033
  }
21563
22034
  },
21564
22035
  "required": [
@@ -21823,7 +22294,7 @@
21823
22294
  ],
21824
22295
  "additionalProperties": false
21825
22296
  },
21826
- "Settings": {
22297
+ "settings": {
21827
22298
  "type": "object",
21828
22299
  "properties": {
21829
22300
  "worktreesDir": {
@@ -21854,9 +22325,6 @@
21854
22325
  "$ref": "#/components/schemas/LabelDefinition"
21855
22326
  }
21856
22327
  },
21857
- "tokenSecret": {
21858
- "type": "string"
21859
- },
21860
22328
  "corsAllowedOrigins": {
21861
22329
  "type": "array",
21862
22330
  "items": {
@@ -22370,6 +22838,32 @@
22370
22838
  ],
22371
22839
  "additionalProperties": false
22372
22840
  },
22841
+ "DirectAccess": {
22842
+ "type": "object",
22843
+ "properties": {
22844
+ "hostId": {
22845
+ "type": "string"
22846
+ },
22847
+ "port": {
22848
+ "type": "number",
22849
+ "description": "The listener's port on `127.0.0.1`."
22850
+ },
22851
+ "token": {
22852
+ "type": "string"
22853
+ },
22854
+ "expiresAt": {
22855
+ "type": "number",
22856
+ "description": "Epoch ms. The client asks for a new token before then."
22857
+ }
22858
+ },
22859
+ "required": [
22860
+ "hostId",
22861
+ "port",
22862
+ "token",
22863
+ "expiresAt"
22864
+ ],
22865
+ "additionalProperties": false
22866
+ },
22373
22867
  "WorktreeTerminalConfig": {
22374
22868
  "type": "object",
22375
22869
  "properties": {