aicodeman 0.3.0 → 0.3.2

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 (185) hide show
  1. package/README.md +27 -4
  2. package/dist/config/server-timing.d.ts +8 -2
  3. package/dist/config/server-timing.d.ts.map +1 -1
  4. package/dist/config/server-timing.js +8 -2
  5. package/dist/config/server-timing.js.map +1 -1
  6. package/dist/hooks-config.d.ts +21 -6
  7. package/dist/hooks-config.d.ts.map +1 -1
  8. package/dist/hooks-config.js +21 -6
  9. package/dist/hooks-config.js.map +1 -1
  10. package/dist/prompts/planner.d.ts +7 -8
  11. package/dist/prompts/planner.d.ts.map +1 -1
  12. package/dist/prompts/planner.js +7 -8
  13. package/dist/prompts/planner.js.map +1 -1
  14. package/dist/prompts/research-agent.d.ts +6 -4
  15. package/dist/prompts/research-agent.d.ts.map +1 -1
  16. package/dist/prompts/research-agent.js +6 -4
  17. package/dist/prompts/research-agent.js.map +1 -1
  18. package/dist/ralph-loop.d.ts +14 -4
  19. package/dist/ralph-loop.d.ts.map +1 -1
  20. package/dist/ralph-loop.js +14 -4
  21. package/dist/ralph-loop.js.map +1 -1
  22. package/dist/ralph-tracker.d.ts +28 -11
  23. package/dist/ralph-tracker.d.ts.map +1 -1
  24. package/dist/ralph-tracker.js +43 -13
  25. package/dist/ralph-tracker.js.map +1 -1
  26. package/dist/respawn-controller.d.ts +23 -14
  27. package/dist/respawn-controller.d.ts.map +1 -1
  28. package/dist/respawn-controller.js +23 -14
  29. package/dist/respawn-controller.js.map +1 -1
  30. package/dist/session-manager.d.ts +17 -5
  31. package/dist/session-manager.d.ts.map +1 -1
  32. package/dist/session-manager.js +17 -5
  33. package/dist/session-manager.js.map +1 -1
  34. package/dist/session.d.ts +21 -8
  35. package/dist/session.d.ts.map +1 -1
  36. package/dist/session.js +21 -8
  37. package/dist/session.js.map +1 -1
  38. package/dist/state-store.d.ts +17 -7
  39. package/dist/state-store.d.ts.map +1 -1
  40. package/dist/state-store.js +17 -7
  41. package/dist/state-store.js.map +1 -1
  42. package/dist/subagent-watcher.d.ts +23 -3
  43. package/dist/subagent-watcher.d.ts.map +1 -1
  44. package/dist/subagent-watcher.js +23 -3
  45. package/dist/subagent-watcher.js.map +1 -1
  46. package/dist/tunnel-manager.d.ts.map +1 -1
  47. package/dist/tunnel-manager.js +1 -2
  48. package/dist/tunnel-manager.js.map +1 -1
  49. package/dist/types/api.d.ts +16 -1
  50. package/dist/types/api.d.ts.map +1 -1
  51. package/dist/types/api.js +16 -1
  52. package/dist/types/api.js.map +1 -1
  53. package/dist/types/app-state.d.ts +18 -1
  54. package/dist/types/app-state.d.ts.map +1 -1
  55. package/dist/types/app-state.js +18 -1
  56. package/dist/types/app-state.js.map +1 -1
  57. package/dist/types/common.d.ts +10 -1
  58. package/dist/types/common.d.ts.map +1 -1
  59. package/dist/types/common.js +10 -1
  60. package/dist/types/common.js.map +1 -1
  61. package/dist/types/index.d.ts +50 -2
  62. package/dist/types/index.d.ts.map +1 -1
  63. package/dist/types/index.js +50 -2
  64. package/dist/types/index.js.map +1 -1
  65. package/dist/types/lifecycle.d.ts +12 -1
  66. package/dist/types/lifecycle.d.ts.map +1 -1
  67. package/dist/types/lifecycle.js +12 -1
  68. package/dist/types/lifecycle.js.map +1 -1
  69. package/dist/types/plan.d.ts +14 -1
  70. package/dist/types/plan.d.ts.map +1 -1
  71. package/dist/types/plan.js +14 -1
  72. package/dist/types/plan.js.map +1 -1
  73. package/dist/types/push.d.ts +14 -1
  74. package/dist/types/push.d.ts.map +1 -1
  75. package/dist/types/push.js +14 -1
  76. package/dist/types/push.js.map +1 -1
  77. package/dist/types/ralph.d.ts +22 -1
  78. package/dist/types/ralph.d.ts.map +1 -1
  79. package/dist/types/ralph.js +22 -1
  80. package/dist/types/ralph.js.map +1 -1
  81. package/dist/types/respawn.d.ts +22 -1
  82. package/dist/types/respawn.d.ts.map +1 -1
  83. package/dist/types/respawn.js +22 -1
  84. package/dist/types/respawn.js.map +1 -1
  85. package/dist/types/run-summary.d.ts +16 -1
  86. package/dist/types/run-summary.d.ts.map +1 -1
  87. package/dist/types/run-summary.js +16 -1
  88. package/dist/types/run-summary.js.map +1 -1
  89. package/dist/types/session.d.ts +23 -1
  90. package/dist/types/session.d.ts.map +1 -1
  91. package/dist/types/session.js +23 -1
  92. package/dist/types/session.js.map +1 -1
  93. package/dist/types/task.d.ts +15 -1
  94. package/dist/types/task.d.ts.map +1 -1
  95. package/dist/types/task.js +15 -1
  96. package/dist/types/task.js.map +1 -1
  97. package/dist/types/teams.d.ts +19 -1
  98. package/dist/types/teams.d.ts.map +1 -1
  99. package/dist/types/teams.js +19 -1
  100. package/dist/types/teams.js.map +1 -1
  101. package/dist/types/tools.d.ts +16 -1
  102. package/dist/types/tools.d.ts.map +1 -1
  103. package/dist/types/tools.js +16 -1
  104. package/dist/types/tools.js.map +1 -1
  105. package/dist/types.d.ts +11 -0
  106. package/dist/types.d.ts.map +1 -1
  107. package/dist/types.js +11 -0
  108. package/dist/types.js.map +1 -1
  109. package/dist/web/public/api-client.js +12 -0
  110. package/dist/web/public/api-client.js.br +0 -0
  111. package/dist/web/public/api-client.js.gz +0 -0
  112. package/dist/web/public/app.js +103 -103
  113. package/dist/web/public/app.js.br +0 -0
  114. package/dist/web/public/app.js.gz +0 -0
  115. package/dist/web/public/constants.js +133 -6
  116. package/dist/web/public/constants.js.br +0 -0
  117. package/dist/web/public/constants.js.gz +0 -0
  118. package/dist/web/public/index.html +14 -10
  119. package/dist/web/public/index.html.br +0 -0
  120. package/dist/web/public/index.html.gz +0 -0
  121. package/dist/web/public/keyboard-accessory.js +27 -4
  122. package/dist/web/public/keyboard-accessory.js.br +0 -0
  123. package/dist/web/public/keyboard-accessory.js.gz +0 -0
  124. package/dist/web/public/mobile-handlers.js +30 -6
  125. package/dist/web/public/mobile-handlers.js.br +0 -0
  126. package/dist/web/public/mobile-handlers.js.gz +0 -0
  127. package/dist/web/public/mobile.css.gz +0 -0
  128. package/dist/web/public/notification-manager.js +27 -0
  129. package/dist/web/public/notification-manager.js.br +0 -0
  130. package/dist/web/public/notification-manager.js.gz +0 -0
  131. package/dist/web/public/ralph-wizard.js +30 -6
  132. package/dist/web/public/ralph-wizard.js.br +0 -0
  133. package/dist/web/public/ralph-wizard.js.gz +0 -0
  134. package/dist/web/public/styles.css +1 -1
  135. package/dist/web/public/styles.css.br +0 -0
  136. package/dist/web/public/styles.css.gz +0 -0
  137. package/dist/web/public/subagent-windows.js +46 -12
  138. package/dist/web/public/subagent-windows.js.br +0 -0
  139. package/dist/web/public/subagent-windows.js.gz +0 -0
  140. package/dist/web/public/sw.js +15 -0
  141. package/dist/web/public/sw.js.br +0 -0
  142. package/dist/web/public/sw.js.gz +0 -0
  143. package/dist/web/public/upload.html.gz +0 -0
  144. package/dist/web/public/vendor/xterm-addon-fit.min.js.gz +0 -0
  145. package/dist/web/public/vendor/xterm-addon-unicode11.min.js.gz +0 -0
  146. package/dist/web/public/vendor/xterm-addon-webgl.min.js.gz +0 -0
  147. package/dist/web/public/vendor/xterm-zerolag-input.js +4 -0
  148. package/dist/web/public/vendor/xterm-zerolag-input.js.br +0 -0
  149. package/dist/web/public/vendor/xterm-zerolag-input.js.gz +0 -0
  150. package/dist/web/public/vendor/xterm.css.gz +0 -0
  151. package/dist/web/public/vendor/xterm.min.js.gz +0 -0
  152. package/dist/web/public/voice-input.js +26 -2
  153. package/dist/web/public/voice-input.js.br +0 -0
  154. package/dist/web/public/voice-input.js.gz +0 -0
  155. package/dist/web/route-helpers.d.ts.map +1 -1
  156. package/dist/web/route-helpers.js +3 -2
  157. package/dist/web/route-helpers.js.map +1 -1
  158. package/dist/web/routes/case-routes.d.ts.map +1 -1
  159. package/dist/web/routes/case-routes.js +11 -4
  160. package/dist/web/routes/case-routes.js.map +1 -1
  161. package/dist/web/routes/plan-routes.d.ts.map +1 -1
  162. package/dist/web/routes/plan-routes.js +26 -22
  163. package/dist/web/routes/plan-routes.js.map +1 -1
  164. package/dist/web/routes/ralph-routes.d.ts.map +1 -1
  165. package/dist/web/routes/ralph-routes.js +16 -6
  166. package/dist/web/routes/ralph-routes.js.map +1 -1
  167. package/dist/web/routes/respawn-routes.d.ts.map +1 -1
  168. package/dist/web/routes/respawn-routes.js +25 -15
  169. package/dist/web/routes/respawn-routes.js.map +1 -1
  170. package/dist/web/routes/session-routes.d.ts.map +1 -1
  171. package/dist/web/routes/session-routes.js +40 -18
  172. package/dist/web/routes/session-routes.js.map +1 -1
  173. package/dist/web/routes/system-routes.d.ts.map +1 -1
  174. package/dist/web/routes/system-routes.js +26 -5
  175. package/dist/web/routes/system-routes.js.map +1 -1
  176. package/dist/web/server.d.ts +25 -6
  177. package/dist/web/server.d.ts.map +1 -1
  178. package/dist/web/server.js +237 -156
  179. package/dist/web/server.js.map +1 -1
  180. package/dist/web/sse-events.d.ts +361 -0
  181. package/dist/web/sse-events.d.ts.map +1 -0
  182. package/dist/web/sse-events.js +396 -0
  183. package/dist/web/sse-events.js.map +1 -0
  184. package/package.json +4 -1
  185. package/scripts/postinstall.js +58 -0
@@ -1,3 +1,18 @@
1
+ /**
2
+ * @fileoverview Service worker for Web Push notifications.
3
+ *
4
+ * Receives push events from the Codeman server (via web-push library) and displays
5
+ * OS-level notifications. Handles notification clicks to focus an existing Codeman
6
+ * tab or open a new one. Supports action buttons, per-session deep linking, and
7
+ * critical notification persistence (requireInteraction).
8
+ *
9
+ * Lifecycle: skipWaiting on install, claim clients on activate — ensures the latest
10
+ * service worker takes control immediately without waiting for tab refresh.
11
+ *
12
+ * @dependency None (runs in ServiceWorkerGlobalScope, isolated from page scripts)
13
+ * @see src/push-store.ts — server-side VAPID key management and subscription CRUD
14
+ */
15
+
1
16
  // Codeman Service Worker — Web Push notifications
2
17
  // This service worker receives push events from the server and displays OS-level notifications.
3
18
  // It also handles notification clicks to focus or open the Codeman tab.
Binary file
Binary file
Binary file
@@ -0,0 +1,4 @@
1
+ "use strict";var XtermZerolagInput=(()=>{var x=Object.defineProperty;var F=Object.getOwnPropertyDescriptor;var L=Object.getOwnPropertyNames;var R=Object.prototype.hasOwnProperty;var E=(r,t)=>{for(var s in t)x(r,s,{get:t[s],enumerable:!0})},H=(r,t,s,e)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of L(t))!R.call(r,i)&&i!==s&&x(r,i,{get:()=>t[i],enumerable:!(e=F(t,i))||e.enumerable});return r};var k=r=>H(x({},"__esModule",{value:!0}),r);var B={};E(B,{ZerolagInputAddon:()=>P});function w(r){let t=r,s=typeof devicePixelRatio=="number"&&devicePixelRatio>0?devicePixelRatio:1;if(t.dimensions?.css?.cell){let e=t.dimensions.css.cell.height;return{width:t.dimensions.css.cell.width,height:e,charTop:(t.dimensions?.device?.char?.top??0)/s,charHeight:(t.dimensions?.device?.char?.height??e*s)/s}}try{let e=t._core?._renderService?.dimensions;if(e?.css?.cell){let i=e.css.cell.height;return{width:e.css.cell.width,height:i,charTop:(e.device?.char?.top??0)/s,charHeight:(e.device?.char?.height??i*s)/s}}}catch{}return null}function C(r,t){try{let s=r.buffer.active,e=s.viewportY;switch(t.type){case"character":{for(let i=r.rows-1;i>=0;i--){let l=s.getLine(e+i);if(!l)continue;let p=l.translateToString(!0).lastIndexOf(t.char);if(p>=0)return{row:i,col:p}}return null}case"regex":{let i=t.pattern,l=i.global?new RegExp(i.source,i.flags.replace("g","")):i;for(let h=r.rows-1;h>=0;h--){let p=s.getLine(e+h);if(!p)continue;let o=p.translateToString(!0).match(l);if(o){let d=o.index??0;return{row:h,col:d}}}return null}case"custom":return t.find(r);default:return null}}catch{return null}}function T(r,t,s){try{let e=r.buffer.active,i=e.viewportY+t.row,l=e.getLine(i);return l?l.translateToString(!0).slice(t.col+s).trimEnd():""}catch{return""}}function O(r,t){let{lines:s,startCol:e,totalCols:i,cellW:l,cellH:h,charTop:p,charHeight:f,promptRow:o,font:d,showCursor:n,cursorColor:m}=t;r.style.left="0px",r.style.top=o*h+"px",r.innerHTML="";let g=i*l;for(let a=0;a<s.length;a++){let _=a===0?e*l:0,c=a===0?g-_:g,u=a*h,y=M(s[a],_,u,c,h,l,p,f,d);r.appendChild(y)}if(n){let a=s[s.length-1],c=(s.length===1?e:0)+a.length;if(c<i){let u=document.createElement("span");u.style.cssText="position:absolute;display:inline-block",u.style.left=c*l+"px",u.style.top=(s.length-1)*h+"px",u.style.width=l+"px",u.style.height=h+"px",u.style.backgroundColor=m,r.appendChild(u)}}r.style.display=""}function M(r,t,s,e,i,l,h,p,f){let o=document.createElement("div");o.style.cssText="position:absolute;pointer-events:none",o.style.backgroundColor=f.backgroundColor,o.style.left=t+"px",o.style.top=s+"px",o.style.width=e+"px",o.style.height=i+1+"px";for(let d=0;d<r.length;d++){let n=document.createElement("span");n.style.cssText="position:absolute;display:inline-block;text-align:center;pointer-events:none;font-feature-settings:'liga' 0,'calt' 0",n.style.left=d*l+"px",n.style.top="0px",n.style.width=l+"px",n.style.height=i+"px",n.style.lineHeight=i+"px",n.style.fontFamily=f.fontFamily,n.style.fontSize=f.fontSize,n.style.fontWeight=f.fontWeight,n.style.color=f.color,f.letterSpacing&&(n.style.letterSpacing=f.letterSpacing),n.textContent=r[d],o.appendChild(n)}return o}var v={type:"character",char:">",offset:2},I=7,X=50,D="#0d0d0d",S="#eeeeee",z="#e0e0e0",P=class{_terminal=null;_overlay=null;_options;_pendingText="";_flushedOffset=0;_flushedText="";_bufferDetectDone=!1;_lastRenderKey="";_lastPromptPos=null;_font={fontFamily:"monospace",fontSize:"14px",fontWeight:"normal",color:S,backgroundColor:D,letterSpacing:""};_scrollTimer=null;_scrollHandler=null;_scrollViewport=null;constructor(t){this._options={prompt:t?.prompt??v,zIndex:t?.zIndex??I,showCursor:t?.showCursor??!0,scrollDebounceMs:t?.scrollDebounceMs??X,backgroundColor:t?.backgroundColor,foregroundColor:t?.foregroundColor,cursorColor:t?.cursorColor}}activate(t){this._terminal=t,this._overlay=document.createElement("div"),this._overlay.style.cssText=`position:absolute;z-index:${this._options.zIndex};pointer-events:none;display:none`;let s=t.element?.querySelector(".xterm-screen");s&&s.appendChild(this._overlay),this._cacheFont(),this._scrollHandler=()=>{try{let i=this._terminal.buffer.active;i.viewportY!==i.baseY?(this._overlay.style.display="none",this._scrollTimer&&(clearTimeout(this._scrollTimer),this._scrollTimer=null)):(this._pendingText||this._flushedOffset>0)&&(this._scrollTimer&&clearTimeout(this._scrollTimer),this._scrollTimer=setTimeout(()=>{this._scrollTimer=null,this._lastRenderKey="",this._render()},this._options.scrollDebounceMs))}catch{}};let e=t.element?.querySelector(".xterm-viewport");e&&(e.addEventListener("scroll",this._scrollHandler,{passive:!0}),this._scrollViewport=e)}dispose(){this.clear(),this._scrollTimer&&(clearTimeout(this._scrollTimer),this._scrollTimer=null),this._scrollViewport&&this._scrollHandler&&this._scrollViewport.removeEventListener("scroll",this._scrollHandler),this._overlay?.remove(),this._overlay=null,this._scrollViewport=null,this._scrollHandler=null,this._terminal=null}addChar(t){!this._pendingText&&!this._flushedOffset&&this._detectBufferText(),this._pendingText+=t,this._render()}appendText(t){t&&(!this._pendingText&&!this._flushedOffset&&this._detectBufferText(),this._pendingText+=t,this._render())}removeChar(){return this._pendingText.length>0?(this._pendingText=this._pendingText.slice(0,-1),this._pendingText.length>0||this._flushedOffset>0?this._render():this._hide(),"pending"):this._flushedOffset>0?(this._flushedOffset--,this._flushedText=this._flushedText.slice(0,-1),this._flushedOffset>0?this._render():this._hide(),"flushed"):(this._detectBufferText(),this._flushedOffset>0?(this._flushedOffset--,this._flushedText=this._flushedText.slice(0,-1),this._flushedOffset>0?this._render():this._hide(),"flushed"):!1)}clear(){this._pendingText="",this._flushedOffset=0,this._flushedText="",this._bufferDetectDone=!1,this._lastRenderKey="",this._lastPromptPos=null,this._hide()}setFlushed(t,s,e=!0){this._flushedOffset=t,this._flushedText=s,e&&this._render()}getFlushed(){return{count:this._flushedOffset,text:this._flushedText}}clearFlushed(){this._flushedOffset=0,this._flushedText="",this._pendingText?this._render():this._hide()}rerender(){(this._pendingText||this._flushedOffset>0)&&(this._lastRenderKey="",this._render())}refreshFont(){this._cacheFont(),this._lastRenderKey="",(this._pendingText||this._flushedOffset>0)&&this._render()}detectBufferText(){return this._detectBufferText()}resetBufferDetection(){this._bufferDetectDone=!1}undoDetection(){this._flushedOffset=0,this._flushedText="",this._bufferDetectDone=!1}suppressBufferDetection(){this._bufferDetectDone=!0}setPrompt(t){this._options.prompt=t,this._lastPromptPos=null,this._lastRenderKey="",(this._pendingText||this._flushedOffset>0)&&this._render()}findPrompt(){return this._terminal?C(this._terminal,this._options.prompt??v):null}readPromptText(){if(!this._terminal)return null;let t=this.findPrompt();if(!t)return null;let s=this._getPromptOffset();return T(this._terminal,t,s)||null}get pendingText(){return this._pendingText}get hasPending(){return this._pendingText.length>0||this._flushedOffset>0}get state(){return{pendingText:this._pendingText,flushedLength:this._flushedOffset,flushedText:this._flushedText,visible:this._overlay!==null&&this._overlay.style.display!=="none",promptPosition:this._lastPromptPos?{...this._lastPromptPos}:null}}_getPromptOffset(){return(this._options.prompt??v).offset??2}_detectBufferText(){if(this._bufferDetectDone||!this._terminal)return null;try{let t=this.findPrompt();if(!t)return null;let s=this._getPromptOffset(),e=T(this._terminal,t,s);if(e.length>0)return this._flushedOffset=e.length,this._flushedText=e,this._lastPromptPos=t,this._bufferDetectDone=!0,e}catch{}return null}_cacheFont(){if(!this._terminal)return;let t=this._terminal;this._font.fontFamily=t.options.fontFamily||"monospace",this._font.fontSize=(t.options.fontSize||14)+"px",this._font.fontWeight=String(t.options.fontWeight||"normal"),this._font.backgroundColor=this._options.backgroundColor??t.options.theme?.background??D,this._font.color=this._options.foregroundColor??t.options.theme?.foreground??S,this._font.letterSpacing="";let s=t.element?.querySelector(".xterm-rows");if(s){let e=getComputedStyle(s);this._font.letterSpacing=e.letterSpacing,!this._options.foregroundColor&&e.color&&(this._font.color=e.color)}}_hide(){this._overlay&&(this._lastRenderKey="",this._lastPromptPos=null,this._overlay.innerHTML="",this._overlay.style.display="none")}_render(){if(!(!this._terminal||!this._overlay)){if(!this._pendingText&&!(this._flushedOffset>0)){this._overlay.style.display="none";return}try{let t=this._terminal.buffer.active;if(t.viewportY!==t.baseY){this._overlay.style.display="none";return}let s=this.findPrompt();if(s)this._lastPromptPos&&this._flushedOffset>0?this._lastPromptPos={row:s.row,col:this._lastPromptPos.col}:this._lastPromptPos=s;else if(!this._lastPromptPos){this._overlay.style.display="none";return}let e=this._lastPromptPos,i=w(this._terminal);if(!i){this._overlay.style.display="none";return}let{width:l,height:h,charTop:p,charHeight:f}=i,o=this._terminal.cols,d=this._getPromptOffset(),n=e.col+d,m=this._pendingText;if(this._flushedOffset>0)if(this._flushedText&&this._flushedText.length===this._flushedOffset)m=this._flushedText+this._pendingText;else{let y=t.viewportY+e.row,b=t.getLine(y);b&&(m=b.translateToString(!0).slice(n,n+this._flushedOffset)+this._pendingText)}let g=`${m}:${n}:${e.row}:${e.col}:${o}:${this._flushedOffset}`;if(g===this._lastRenderKey&&this._overlay.style.display!=="none")return;this._lastRenderKey=g;let a=Math.max(1,o-n),_=[],c=m;for(_.push(c.slice(0,a)),c=c.slice(a);c.length>0;)_.push(c.slice(0,o)),c=c.slice(o);let u=this._options.cursorColor??this._terminal.options.theme?.cursor??z;O(this._overlay,{lines:_,startCol:n,totalCols:o,cellW:l,cellH:h,charTop:p,charHeight:f,promptRow:e.row,font:this._font,showCursor:this._options.showCursor,cursorColor:u})}catch{this._overlay&&(this._overlay.innerHTML="",this._overlay.style.display="none")}}}};return k(B);})();
2
+
3
+ // Global aliases for browser usage
4
+ if(typeof window!=="undefined"){window.ZerolagInputAddon=XtermZerolagInput.ZerolagInputAddon;window.LocalEchoOverlay=class extends XtermZerolagInput.ZerolagInputAddon{constructor(terminal){super({prompt:{type:"character",char:"\u276f",offset:2}});this.activate(terminal);}};}
Binary file
@@ -1,9 +1,33 @@
1
+ /**
2
+ * @fileoverview Voice input with Deepgram Nova-3 (primary) and Web Speech API (fallback).
3
+ *
4
+ * Defines two singleton objects:
5
+ *
6
+ * - DeepgramProvider — Direct browser-to-Deepgram WebSocket connection for speech-to-text.
7
+ * Captures audio via MediaRecorder, streams chunks every 250ms, handles KeepAlive pings,
8
+ * auto-detects MIME type (opus/webm/mp4), and supports custom key terms for dev vocabulary.
9
+ *
10
+ * - VoiceInput — High-level voice input controller. Toggle mode: tap mic to start, tap
11
+ * again to stop. Auto-stops after 3s silence. Shows floating preview overlay with recording
12
+ * indicator, level meter (AnalyserNode), and elapsed timer. Two insert modes: "direct"
13
+ * (inject into local echo overlay or PTY) and "compose" (editable textarea overlay).
14
+ * Includes a temporary green Send button that replaces the settings gear icon after voice input.
15
+ * Web Speech API has auto-retry (up to 2x) for premature onend and iOS Safari stability check.
16
+ *
17
+ * @globals {object} DeepgramProvider
18
+ * @globals {object} VoiceInput
19
+ *
20
+ * @dependency mobile-handlers.js (MobileDetection for device checks)
21
+ * @dependency app.js (uses global `app` for sendInput, showToast, terminal focus)
22
+ * @loadorder 3 of 9 — loaded after mobile-handlers.js, before notification-manager.js
23
+ */
24
+
1
25
  // Codeman — Voice input with Deepgram Nova-3 and Web Speech API fallback
2
26
  // Loaded after mobile-handlers.js, before app.js
3
27
 
4
- // ============================================================================
28
+ // ═══════════════════════════════════════════════════════════════
5
29
  // Voice Input (Deepgram Nova-3 + Web Speech API fallback)
6
- // ============================================================================
30
+ // ═══════════════════════════════════════════════════════════════
7
31
 
8
32
  /**
9
33
  * DeepgramProvider - Speech-to-text via Deepgram Nova-3 WebSocket API.
Binary file
Binary file
@@ -1 +1 @@
1
- {"version":3,"file":"route-helpers.d.ts","sourceRoot":"","sources":["../../src/web/route-helpers.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAGxC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAGvD,eAAO,MAAM,SAAS,QAAmC,CAAC;AAC1D,eAAO,MAAM,aAAa,QAA+C,CAAC;AAK1E;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAS9E;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAapD;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CA2C1G;AAED;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,GAAG,IAAI,CAsC7F"}
1
+ {"version":3,"file":"route-helpers.d.ts","sourceRoot":"","sources":["../../src/web/route-helpers.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAIxC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAGvD,eAAO,MAAM,SAAS,QAAmC,CAAC;AAC1D,eAAO,MAAM,aAAa,QAA+C,CAAC;AAK1E;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAS9E;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAapD;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CA2C1G;AAED;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,GAAG,IAAI,CAsC7F"}
@@ -8,6 +8,7 @@ import { join } from 'node:path';
8
8
  import { homedir } from 'node:os';
9
9
  import { ApiErrorCode, createErrorResponse } from '../types.js';
10
10
  import { parseRalphLoopConfig, extractCompletionPhrase } from '../ralph-config.js';
11
+ import { SseEvent } from './sse-events.js';
11
12
  // Shared path constants used across route modules
12
13
  export const CASES_DIR = join(homedir(), 'codeman-cases');
13
14
  export const SETTINGS_PATH = join(homedir(), '.codeman', 'settings.json');
@@ -121,7 +122,7 @@ export function autoConfigureRalph(session, workingDir, ctx) {
121
122
  console.log(`[auto-detect] Ralph loop at iteration ${ralphConfig.iteration}/${ralphConfig.maxIterations ?? '∞'}`);
122
123
  }
123
124
  console.log(`[auto-detect] Configured Ralph loop for session ${session.id} from ralph-loop.local.md: ${ralphConfig.completionPromise}`);
124
- ctx.broadcast('session:ralphLoopUpdate', {
125
+ ctx.broadcast(SseEvent.SessionRalphLoopUpdate, {
125
126
  sessionId: session.id,
126
127
  state: session.ralphTracker.loopState,
127
128
  });
@@ -134,7 +135,7 @@ export function autoConfigureRalph(session, workingDir, ctx) {
134
135
  session.ralphTracker.enable();
135
136
  session.ralphTracker.startLoop(completionPhrase);
136
137
  console.log(`[auto-detect] Configured Ralph loop for session ${session.id} from CLAUDE.md: ${completionPhrase}`);
137
- ctx.broadcast('session:ralphLoopUpdate', {
138
+ ctx.broadcast(SseEvent.SessionRalphLoopUpdate, {
138
139
  sessionId: session.id,
139
140
  state: session.ralphTracker.loopState,
140
141
  });
@@ -1 +1 @@
1
- {"version":3,"file":"route-helpers.js","sourceRoot":"","sources":["../../src/web/route-helpers.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAElC,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAChE,OAAO,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAInF,kDAAkD;AAClD,MAAM,CAAC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,eAAe,CAAC,CAAC;AAC1D,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,UAAU,EAAE,eAAe,CAAC,CAAC;AAE1E,6DAA6D;AAC7D,MAAM,kBAAkB,GAAG,CAAC,GAAG,IAAI,CAAC;AAEpC;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,GAAgB,EAAE,SAAiB;IACnE,MAAM,OAAO,GAAG,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC5C,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,WAAW,SAAS,YAAY,CAAC,EAAE;YAC/D,UAAU,EAAE,GAAG;YACf,IAAI,EAAE,mBAAmB,CAAC,YAAY,CAAC,SAAS,EAAE,WAAW,SAAS,YAAY,CAAC;SACpF,CAAC,CAAC;IACL,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,OAAe;IAC1C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,CAAC;IACzC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,GAAG,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;IACnD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAClD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;IAEtC,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,IAAI,GAAG,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC;IACrC,IAAI,KAAK,GAAG,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC;IACvC,IAAI,OAAO,GAAG,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,GAAG,OAAO,GAAG,CAAC,CAAC;IAC3C,IAAI,IAAI,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC;IAE3D,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACzB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAgD;IAC/E,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,OAAO,EAAE,CAAC;IAEjD,6DAA6D;IAC7D,MAAM,UAAU,GAA4B,EAAE,CAAC;IAC/C,MAAM,WAAW,GAAG;QAClB,iBAAiB;QACjB,WAAW;QACX,YAAY;QACZ,YAAY;QACZ,KAAK;QACL,iBAAiB;QACjB,kBAAkB;QAClB,iBAAiB;KAClB,CAAC;IAEF,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;QAC9B,IAAI,GAAG,IAAI,IAAI,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE,CAAC;YAC3C,UAAU,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC;IAED,sEAAsE;IACtE,IAAI,UAAU,CAAC,UAAU,IAAI,OAAO,UAAU,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;QACvE,MAAM,KAAK,GAAG,UAAU,CAAC,UAAqC,CAAC;QAC/D,MAAM,OAAO,GAA4B,EAAE,CAAC;QAC5C,IAAI,KAAK,CAAC,OAAO;YAAE,OAAO,CAAC,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QACzE,IAAI,KAAK,CAAC,SAAS;YAAE,OAAO,CAAC,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QAC/E,IAAI,KAAK,CAAC,WAAW;YAAE,OAAO,CAAC,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QACrF,IAAI,KAAK,CAAC,KAAK;YAAE,OAAO,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QACnE,IAAI,KAAK,CAAC,GAAG;YAAE,OAAO,CAAC,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QAC7D,IAAI,KAAK,CAAC,OAAO;YAAE,OAAO,CAAC,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QACzE,IAAI,KAAK,CAAC,MAAM;YAAE,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QACtE,UAAU,CAAC,UAAU,GAAG,OAAO,CAAC;IAClC,CAAC;IAED,2DAA2D;IAC3D,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IAC9C,IAAI,UAAU,CAAC,MAAM,GAAG,kBAAkB,EAAE,CAAC;QAC3C,OAAO,EAAE,SAAS,EAAE,UAAU,CAAC,SAAS,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;IAC/D,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAgB,EAAE,UAAkB,EAAE,GAAc;IACrF,iEAAiE;IACjE,MAAM,WAAW,GAAG,oBAAoB,CAAC,UAAU,CAAC,CAAC;IAErD,IAAI,WAAW,IAAI,WAAW,CAAC,iBAAiB,EAAE,CAAC;QACjD,OAAO,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;QAC9B,OAAO,CAAC,YAAY,CAAC,SAAS,CAAC,WAAW,CAAC,iBAAiB,EAAE,WAAW,CAAC,aAAa,IAAI,SAAS,CAAC,CAAC;QAEtG,uCAAuC;QACvC,IAAI,WAAW,CAAC,SAAS,GAAG,CAAC,EAAE,CAAC;YAC9B,6EAA6E;YAC7E,2DAA2D;YAC3D,OAAO,CAAC,GAAG,CAAC,yCAAyC,WAAW,CAAC,SAAS,IAAI,WAAW,CAAC,aAAa,IAAI,GAAG,EAAE,CAAC,CAAC;QACpH,CAAC;QAED,OAAO,CAAC,GAAG,CACT,mDAAmD,OAAO,CAAC,EAAE,8BAA8B,WAAW,CAAC,iBAAiB,EAAE,CAC3H,CAAC;QACF,GAAG,CAAC,SAAS,CAAC,yBAAyB,EAAE;YACvC,SAAS,EAAE,OAAO,CAAC,EAAE;YACrB,KAAK,EAAE,OAAO,CAAC,YAAY,CAAC,SAAS;SACtC,CAAC,CAAC;QACH,OAAO;IACT,CAAC;IAED,0BAA0B;IAC1B,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IACnD,MAAM,gBAAgB,GAAG,uBAAuB,CAAC,YAAY,CAAC,CAAC;IAE/D,IAAI,gBAAgB,EAAE,CAAC;QACrB,OAAO,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;QAC9B,OAAO,CAAC,YAAY,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;QACjD,OAAO,CAAC,GAAG,CAAC,mDAAmD,OAAO,CAAC,EAAE,oBAAoB,gBAAgB,EAAE,CAAC,CAAC;QACjH,GAAG,CAAC,SAAS,CAAC,yBAAyB,EAAE;YACvC,SAAS,EAAE,OAAO,CAAC,EAAE;YACrB,KAAK,EAAE,OAAO,CAAC,YAAY,CAAC,SAAS;SACtC,CAAC,CAAC;IACL,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"route-helpers.js","sourceRoot":"","sources":["../../src/web/route-helpers.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"case-routes.d.ts","sourceRoot":"","sources":["../../../src/web/routes/case-routes.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAW1C,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE/D,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE,SAAS,GAAG,UAAU,GAAG,IAAI,CA4c1F"}
1
+ {"version":3,"file":"case-routes.d.ts","sourceRoot":"","sources":["../../../src/web/routes/case-routes.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAY1C,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE/D,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE,SAAS,GAAG,UAAU,GAAG,IAAI,CAod1F"}
@@ -12,8 +12,12 @@ import { CreateCaseSchema, LinkCaseSchema } from '../schemas.js';
12
12
  import { generateClaudeMd } from '../../templates/claude-md.js';
13
13
  import { writeHooksConfig } from '../../hooks-config.js';
14
14
  import { CASES_DIR } from '../route-helpers.js';
15
+ import { SseEvent } from '../sse-events.js';
15
16
  export function registerCaseRoutes(app, ctx) {
16
- // ============ Case CRUD ============
17
+ // ═══════════════════════════════════════════════════════════════
18
+ // Case CRUD (list, create, link, detail, fix-plan)
19
+ // ═══════════════════════════════════════════════════════════════
20
+ // ========== List Cases ==========
17
21
  app.get('/api/cases', async () => {
18
22
  const cases = [];
19
23
  // Get cases from CASES_DIR
@@ -80,7 +84,7 @@ export function registerCaseRoutes(app, ctx) {
80
84
  writeFileSync(join(casePath, 'CLAUDE.md'), claudeMd);
81
85
  // Write .claude/settings.local.json with hooks for desktop notifications
82
86
  await writeHooksConfig(casePath);
83
- ctx.broadcast('case:created', { name, path: casePath });
87
+ ctx.broadcast(SseEvent.CaseCreated, { name, path: casePath });
84
88
  return { success: true, data: { case: { name, path: casePath } } };
85
89
  }
86
90
  catch (err) {
@@ -128,7 +132,7 @@ export function registerCaseRoutes(app, ctx) {
128
132
  mkdirSync(codemanDir, { recursive: true });
129
133
  }
130
134
  await fs.writeFile(linkedCasesFile, JSON.stringify(linkedCases, null, 2));
131
- ctx.broadcast('case:linked', { name, path: expandedPath });
135
+ ctx.broadcast(SseEvent.CaseLinked, { name, path: expandedPath });
132
136
  return { success: true, data: { case: { name, path: expandedPath } } };
133
137
  }
134
138
  catch (err) {
@@ -276,7 +280,10 @@ export function registerCaseRoutes(app, ctx) {
276
280
  return createErrorResponse(ApiErrorCode.OPERATION_FAILED, `Failed to read @fix_plan.md: ${err}`);
277
281
  }
278
282
  });
279
- // ============ Ralph Wizard File Endpoints ============
283
+ // ═══════════════════════════════════════════════════════════════
284
+ // Ralph Wizard Files (per-case prompt/result serving)
285
+ // ═══════════════════════════════════════════════════════════════
286
+ // ========== List Wizard Files ==========
280
287
  app.get('/api/cases/:caseName/ralph-wizard/files', async (req) => {
281
288
  const { caseName } = req.params;
282
289
  let casePath = join(CASES_DIR, caseName);
@@ -1 +1 @@
1
- {"version":3,"file":"case-routes.js","sourceRoot":"","sources":["../../../src/web/routes/case-routes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"case-routes.js","sourceRoot":"","sources":["../../../src/web/routes/case-routes.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"plan-routes.d.ts","sourceRoot":"","sources":["../../../src/web/routes/plan-routes.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAc1C,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAEvF,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE,WAAW,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,GAAG,IAAI,CAobpH"}
1
+ {"version":3,"file":"plan-routes.d.ts","sourceRoot":"","sources":["../../../src/web/routes/plan-routes.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAe1C,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAEvF,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE,WAAW,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,GAAG,IAAI,CA+bpH"}
@@ -10,8 +10,12 @@ import { ApiErrorCode, createErrorResponse, getErrorMessage } from '../../types.
10
10
  import { PlanOrchestrator } from '../../plan-orchestrator.js';
11
11
  import { GeneratePlanSchema, GeneratePlanDetailedSchema, CancelPlanSchema, PlanTaskUpdateSchema, PlanTaskAddSchema, } from '../schemas.js';
12
12
  import { findSessionOrFail, CASES_DIR } from '../route-helpers.js';
13
+ import { SseEvent } from '../sse-events.js';
13
14
  export function registerPlanRoutes(app, ctx) {
14
- // ============ Plan Generation Endpoints ============
15
+ // ═══════════════════════════════════════════════════════════════
16
+ // Plan Generation (simple AI + detailed orchestration)
17
+ // ═══════════════════════════════════════════════════════════════
18
+ // ========== Generate Plan (Simple) ==========
15
19
  app.post('/api/generate-plan', async (req) => {
16
20
  const gpResult = GeneratePlanSchema.safeParse(req.body);
17
21
  if (!gpResult.success) {
@@ -190,8 +194,7 @@ NOW: Generate the implementation plan for the task above. Think step by step.`;
190
194
  }
191
195
  }
192
196
  });
193
- // Generate detailed implementation plan using subagent orchestration
194
- // This spawns multiple specialist subagents in parallel for thorough analysis
197
+ // ========== Generate Plan (Detailed Orchestration) ==========
195
198
  app.post('/api/generate-plan-detailed', async (req) => {
196
199
  const gpdResult = GeneratePlanDetailedSchema.safeParse(req.body);
197
200
  if (!gpdResult.success) {
@@ -228,24 +231,24 @@ NOW: Generate the implementation plan for the task above. Think step by step.`;
228
231
  const orchestratorId = `plan-${Date.now()}`;
229
232
  ctx.activePlanOrchestrators.set(orchestratorId, orchestrator);
230
233
  // Broadcast the orchestrator ID so frontend can cancel if needed
231
- ctx.broadcast('plan:started', { orchestratorId });
234
+ ctx.broadcast(SseEvent.PlanStarted, { orchestratorId });
232
235
  // Track progress for SSE updates
233
236
  const progressUpdates = [];
234
237
  const onProgress = (phase, detail) => {
235
238
  const update = { phase, detail, timestamp: Date.now() };
236
239
  progressUpdates.push(update);
237
240
  // Broadcast progress to connected clients
238
- ctx.broadcast('plan:progress', update);
241
+ ctx.broadcast(SseEvent.PlanProgress, update);
239
242
  };
240
243
  // Broadcast plan subagent events for UI visibility
241
244
  const onSubagent = (event) => {
242
- ctx.broadcast('plan:subagent', event);
245
+ ctx.broadcast(SseEvent.PlanSubagent, event);
243
246
  };
244
247
  try {
245
248
  const result = await orchestrator.generateDetailedPlan(taskDescription, onProgress, onSubagent);
246
249
  // Clean up orchestrator from active map
247
250
  ctx.activePlanOrchestrators.delete(orchestratorId);
248
- ctx.broadcast('plan:completed', { orchestratorId, success: result.success });
251
+ ctx.broadcast(SseEvent.PlanCompleted, { orchestratorId, success: result.success });
249
252
  if (!result.success) {
250
253
  return createErrorResponse(ApiErrorCode.OPERATION_FAILED, result.error || 'Plan generation failed');
251
254
  }
@@ -263,7 +266,7 @@ NOW: Generate the implementation plan for the task above. Think step by step.`;
263
266
  catch (err) {
264
267
  // Clean up on error too
265
268
  ctx.activePlanOrchestrators.delete(orchestratorId);
266
- ctx.broadcast('plan:completed', {
269
+ ctx.broadcast(SseEvent.PlanCompleted, {
267
270
  orchestratorId,
268
271
  success: false,
269
272
  error: getErrorMessage(err),
@@ -271,7 +274,7 @@ NOW: Generate the implementation plan for the task above. Think step by step.`;
271
274
  return createErrorResponse(ApiErrorCode.OPERATION_FAILED, 'Detailed plan generation failed: ' + getErrorMessage(err));
272
275
  }
273
276
  });
274
- // Cancel active plan generation
277
+ // ========== Cancel Plan Generation ==========
275
278
  app.post('/api/cancel-plan-generation', async (req) => {
276
279
  const cpResult = CancelPlanSchema.safeParse(req.body);
277
280
  if (!cpResult.success) {
@@ -287,7 +290,7 @@ NOW: Generate the implementation plan for the task above. Think step by step.`;
287
290
  console.log(`[API] Cancelling plan generation ${orchestratorId}`);
288
291
  await orchestrator.cancel();
289
292
  ctx.activePlanOrchestrators.delete(orchestratorId);
290
- ctx.broadcast('plan:cancelled', { orchestratorId });
293
+ ctx.broadcast(SseEvent.PlanCancelled, { orchestratorId });
291
294
  return { success: true, data: { cancelled: orchestratorId } };
292
295
  }
293
296
  // Otherwise cancel all active plan generations
@@ -296,14 +299,15 @@ NOW: Generate the implementation plan for the task above. Think step by step.`;
296
299
  console.log(`[API] Cancelling plan generation ${id}`);
297
300
  await orchestrator.cancel();
298
301
  cancelled.push(id);
299
- ctx.broadcast('plan:cancelled', { orchestratorId: id });
302
+ ctx.broadcast(SseEvent.PlanCancelled, { orchestratorId: id });
300
303
  }
301
304
  ctx.activePlanOrchestrators.clear();
302
305
  return { success: true, data: { cancelled } };
303
306
  });
304
- // ============ Plan Management Endpoints ============
305
- // These endpoints support runtime plan adaptation with checkpoints, failure tracking, and versioning
306
- // Update a specific plan task (status, attempts, errors)
307
+ // ═══════════════════════════════════════════════════════════════
308
+ // Plan Management (task CRUD, checkpoints, version history, rollback)
309
+ // ═══════════════════════════════════════════════════════════════
310
+ // ========== Update Plan Task ==========
307
311
  app.patch('/api/sessions/:id/plan/task/:taskId', async (req) => {
308
312
  const { id, taskId } = req.params;
309
313
  const session = findSessionOrFail(ctx, id);
@@ -320,10 +324,10 @@ NOW: Generate the implementation plan for the task above. Think step by step.`;
320
324
  if (!result.success) {
321
325
  return createErrorResponse(ApiErrorCode.NOT_FOUND, result.error || 'Task not found');
322
326
  }
323
- ctx.broadcast('session:planTaskUpdate', { sessionId: id, taskId, update: result.task });
327
+ ctx.broadcast(SseEvent.SessionPlanTaskUpdate, { sessionId: id, taskId, update: result.task });
324
328
  return { success: true, data: result.task };
325
329
  });
326
- // Trigger a checkpoint review (at iterations 5, 10, 20, etc.)
330
+ // ========== Create Checkpoint ==========
327
331
  app.post('/api/sessions/:id/plan/checkpoint', async (req) => {
328
332
  const { id } = req.params;
329
333
  const session = findSessionOrFail(ctx, id);
@@ -332,10 +336,10 @@ NOW: Generate the implementation plan for the task above. Think step by step.`;
332
336
  return createErrorResponse(ApiErrorCode.OPERATION_FAILED, 'Ralph tracker not available');
333
337
  }
334
338
  const checkpoint = tracker.generateCheckpointReview();
335
- ctx.broadcast('session:planCheckpoint', { sessionId: id, checkpoint });
339
+ ctx.broadcast(SseEvent.SessionPlanCheckpoint, { sessionId: id, checkpoint });
336
340
  return { success: true, data: checkpoint };
337
341
  });
338
- // Get plan version history
342
+ // ========== Get Version History ==========
339
343
  app.get('/api/sessions/:id/plan/history', async (req) => {
340
344
  const { id } = req.params;
341
345
  const session = findSessionOrFail(ctx, id);
@@ -345,7 +349,7 @@ NOW: Generate the implementation plan for the task above. Think step by step.`;
345
349
  }
346
350
  return { success: true, data: tracker.getPlanHistory() };
347
351
  });
348
- // Rollback to a previous plan version
352
+ // ========== Rollback to Version ==========
349
353
  app.post('/api/sessions/:id/plan/rollback/:version', async (req) => {
350
354
  const { id, version } = req.params;
351
355
  const session = findSessionOrFail(ctx, id);
@@ -357,10 +361,10 @@ NOW: Generate the implementation plan for the task above. Think step by step.`;
357
361
  if (!result.success) {
358
362
  return createErrorResponse(ApiErrorCode.NOT_FOUND, result.error || 'Version not found');
359
363
  }
360
- ctx.broadcast('session:planRollback', { sessionId: id, version: parseInt(version, 10) });
364
+ ctx.broadcast(SseEvent.SessionPlanRollback, { sessionId: id, version: parseInt(version, 10) });
361
365
  return { success: true, data: result.plan };
362
366
  });
363
- // Add a new task to the plan (for runtime adaptation)
367
+ // ========== Add Plan Task ==========
364
368
  app.post('/api/sessions/:id/plan/task', async (req) => {
365
369
  const { id } = req.params;
366
370
  const session = findSessionOrFail(ctx, id);
@@ -374,7 +378,7 @@ NOW: Generate the implementation plan for the task above. Think step by step.`;
374
378
  }
375
379
  const task = ptaResult.data;
376
380
  const result = tracker.addPlanTask(task);
377
- ctx.broadcast('session:planTaskAdded', { sessionId: id, task: result.task });
381
+ ctx.broadcast(SseEvent.SessionPlanTaskAdded, { sessionId: id, task: result.task });
378
382
  return { success: true, data: result.task };
379
383
  });
380
384
  }
@@ -1 +1 @@
1
- {"version":3,"file":"plan-routes.js","sourceRoot":"","sources":["../../../src/web/routes/plan-routes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plan-routes.js","sourceRoot":"","sources":["../../../src/web/routes/plan-routes.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ralph-routes.d.ts","sourceRoot":"","sources":["../../../src/web/routes/ralph-routes.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAY1C,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAGpG,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,eAAe,EACpB,GAAG,EAAE,WAAW,GAAG,SAAS,GAAG,WAAW,GAAG,UAAU,GAAG,SAAS,GAClE,IAAI,CA4fN"}
1
+ {"version":3,"file":"ralph-routes.d.ts","sourceRoot":"","sources":["../../../src/web/routes/ralph-routes.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAa1C,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAGpG,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,eAAe,EACpB,GAAG,EAAE,WAAW,GAAG,SAAS,GAAG,WAAW,GAAG,UAAU,GAAG,SAAS,GAClE,IAAI,CAwgBN"}
@@ -10,12 +10,16 @@ import { ApiErrorCode, createErrorResponse, getErrorMessage } from '../../types.
10
10
  import { Session } from '../../session.js';
11
11
  import { RespawnController } from '../../respawn-controller.js';
12
12
  import { RalphConfigSchema, FixPlanImportSchema, RalphPromptWriteSchema, RalphLoopStartSchema } from '../schemas.js';
13
+ import { SseEvent } from '../sse-events.js';
13
14
  import { autoConfigureRalph, CASES_DIR, SETTINGS_PATH } from '../route-helpers.js';
14
15
  import { writeHooksConfig } from '../../hooks-config.js';
15
16
  import { generateClaudeMd } from '../../templates/claude-md.js';
16
17
  import { getLifecycleLog } from '../../session-lifecycle-log.js';
17
18
  import { MAX_CONCURRENT_SESSIONS } from '../../config/map-limits.js';
18
19
  export function registerRalphRoutes(app, ctx) {
20
+ // ═══════════════════════════════════════════════════════════════
21
+ // Ralph Tracker Configuration & Status
22
+ // ═══════════════════════════════════════════════════════════════
19
23
  // Configure Ralph tracker for a session
20
24
  app.post('/api/sessions/:id/ralph-config', async (req) => {
21
25
  const { id } = req.params;
@@ -77,7 +81,7 @@ export function registerRalphRoutes(app, ctx) {
77
81
  }
78
82
  // Persist and broadcast the update
79
83
  ctx.persistSessionState(session);
80
- ctx.broadcast('session:ralphLoopUpdate', {
84
+ ctx.broadcast(SseEvent.SessionRalphLoopUpdate, {
81
85
  sessionId: id,
82
86
  state: session.ralphLoopState,
83
87
  });
@@ -110,6 +114,9 @@ export function registerRalphRoutes(app, ctx) {
110
114
  },
111
115
  };
112
116
  });
117
+ // ═══════════════════════════════════════════════════════════════
118
+ // Fix Plan CRUD (@fix_plan.md generation, import, read/write)
119
+ // ═══════════════════════════════════════════════════════════════
113
120
  // Generate @fix_plan.md content from todos
114
121
  app.get('/api/sessions/:id/fix-plan', async (req) => {
115
122
  const { id } = req.params;
@@ -207,6 +214,9 @@ export function registerRalphRoutes(app, ctx) {
207
214
  return createErrorResponse(ApiErrorCode.OPERATION_FAILED, `Failed to read file: ${error}`);
208
215
  }
209
216
  });
217
+ // ═══════════════════════════════════════════════════════════════
218
+ // Ralph Prompt & Loop (prompt write, loop start)
219
+ // ═══════════════════════════════════════════════════════════════
210
220
  // Write Ralph prompt to file in session's working directory
211
221
  // This avoids mux input escaping issues with long multi-line prompts
212
222
  app.post('/api/sessions/:id/ralph-prompt/write', async (req) => {
@@ -267,7 +277,7 @@ export function registerRalphRoutes(app, ctx) {
267
277
  const claudeMd = generateClaudeMd(caseName, '', templatePath);
268
278
  writeFileSync(join(casePath, 'CLAUDE.md'), claudeMd);
269
279
  await writeHooksConfig(casePath);
270
- ctx.broadcast('case:created', { name: caseName, path: casePath });
280
+ ctx.broadcast(SseEvent.CaseCreated, { name: caseName, path: casePath });
271
281
  }
272
282
  catch (err) {
273
283
  return createErrorResponse(ApiErrorCode.OPERATION_FAILED, `Failed to create case: ${getErrorMessage(err)}`);
@@ -382,7 +392,7 @@ export function registerRalphRoutes(app, ctx) {
382
392
  name: session.name,
383
393
  reason: 'ralph_loop_start',
384
394
  });
385
- ctx.broadcast('session:created', ctx.getSessionStateWithRespawn(session));
395
+ ctx.broadcast(SseEvent.SessionCreated, ctx.getSessionStateWithRespawn(session));
386
396
  // Start interactive mode
387
397
  try {
388
398
  await session.startInteractive();
@@ -392,8 +402,8 @@ export function registerRalphRoutes(app, ctx) {
392
402
  name: session.name,
393
403
  mode: 'claude',
394
404
  });
395
- ctx.broadcast('session:interactive', { id: session.id, mode: 'claude' });
396
- ctx.broadcast('session:updated', { session: ctx.getSessionStateWithRespawn(session) });
405
+ ctx.broadcast(SseEvent.SessionInteractive, { id: session.id, mode: 'claude' });
406
+ ctx.broadcast(SseEvent.SessionUpdated, { session: ctx.getSessionStateWithRespawn(session) });
397
407
  }
398
408
  catch (err) {
399
409
  await ctx.cleanupSession(session.id, true, 'ralph_loop_start_error');
@@ -414,7 +424,7 @@ export function registerRalphRoutes(app, ctx) {
414
424
  controller.start();
415
425
  ctx.saveRespawnConfig(session.id, controller.getConfig());
416
426
  ctx.persistSessionState(session);
417
- ctx.broadcast('respawn:started', {
427
+ ctx.broadcast(SseEvent.RespawnStarted, {
418
428
  sessionId: session.id,
419
429
  status: controller.getStatus(),
420
430
  });